Remove dead code from scalar_binop

Message ID 20230301212708.4030388-1-tromey@adacore.com
State New
Headers
Series Remove dead code from scalar_binop |

Commit Message

Tom Tromey March 1, 2023, 9:27 p.m. UTC
  scalar_binop has code for "&&" and "||", but I think this code can't
currently be run -- and, furthermore, it doesn't make sense to have
this code here, as the point of these operators is to short-circuit
evaluation.

This patch removes the dead code.

Regression tested on x86-64 Fedora 36.
---
 gdb/valarith.c | 16 ----------------
 1 file changed, 16 deletions(-)
  

Comments

Kevin Buettner March 10, 2023, 11:38 p.m. UTC | #1
On Wed,  1 Mar 2023 14:27:08 -0700
Tom Tromey via Gdb-patches <gdb-patches@sourceware.org> wrote:

> scalar_binop has code for "&&" and "||", but I think this code can't
> currently be run -- and, furthermore, it doesn't make sense to have
> this code here, as the point of these operators is to short-circuit
> evaluation.

Agreed, on both points.  (Though it took me a while to convince myself
that it couldn't currently be run.)

Approved-by: Kevin Buettner <kevinb@redhat.com>
  

Patch

diff --git a/gdb/valarith.c b/gdb/valarith.c
index 6ea0cd9e8d1..ad53febcedc 100644
--- a/gdb/valarith.c
+++ b/gdb/valarith.c
@@ -1331,14 +1331,6 @@  scalar_binop (struct value *arg1, struct value *arg2, enum exp_opcode op)
 	      v = v1 ^ v2;
 	      break;
 
-	    case BINOP_LOGICAL_AND:
-	      v = v1 && v2;
-	      break;
-
-	    case BINOP_LOGICAL_OR:
-	      v = v1 || v2;
-	      break;
-
 	    case BINOP_MIN:
 	      v = v1 < v2 ? v1 : v2;
 	      break;
@@ -1492,14 +1484,6 @@  scalar_binop (struct value *arg1, struct value *arg2, enum exp_opcode op)
 	      v = v1 ^ v2;
 	      break;
 
-	    case BINOP_LOGICAL_AND:
-	      v = v1 && v2;
-	      break;
-
-	    case BINOP_LOGICAL_OR:
-	      v = v1 || v2;
-	      break;
-
 	    case BINOP_MIN:
 	      v = v1 < v2 ? v1 : v2;
 	      break;