diff options
author | Tom Tromey <tom@tromey.com> | 2021-03-08 07:27:57 -0700 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2021-03-08 07:28:44 -0700 |
commit | 3dd93bf837b10e01864d7d223ae9d3f9b92df74e (patch) | |
tree | 6f48c2db566069ae33c55e883994927dcc1b570c /gdb | |
parent | 9c79936b3df018166d53869f7f2bb2909f129e51 (diff) | |
download | gdb-3dd93bf837b10e01864d7d223ae9d3f9b92df74e.zip gdb-3dd93bf837b10e01864d7d223ae9d3f9b92df74e.tar.gz gdb-3dd93bf837b10e01864d7d223ae9d3f9b92df74e.tar.bz2 |
Remove some null checks
When not parsing for completion, parse_expression ensures that the
resulting expression has operations. This patch removes a couple of
unnecessary checks for this situation.
gdb/ChangeLog
2021-03-08 Tom Tromey <tom@tromey.com>
* printcmd.c (set_command): Remove null check.
* value.c (init_if_undefined_command): Remove null check.
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/printcmd.c | 29 | ||||
-rw-r--r-- | gdb/value.c | 2 |
3 files changed, 20 insertions, 16 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d1cf966..2024f94 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2021-03-08 Tom Tromey <tom@tromey.com> + * printcmd.c (set_command): Remove null check. + * value.c (init_if_undefined_command): Remove null check. + +2021-03-08 Tom Tromey <tom@tromey.com> + * parse.c (parser_state::push_symbol, parser_state::push_dollar): Update. * p-exp.y (variable): Update. diff --git a/gdb/printcmd.c b/gdb/printcmd.c index 2a06aea..8508906 100644 --- a/gdb/printcmd.c +++ b/gdb/printcmd.c @@ -1375,21 +1375,20 @@ set_command (const char *exp, int from_tty) { expression_up expr = parse_expression (exp); - if (expr->op != nullptr) - switch (expr->op->opcode ()) - { - case UNOP_PREINCREMENT: - case UNOP_POSTINCREMENT: - case UNOP_PREDECREMENT: - case UNOP_POSTDECREMENT: - case BINOP_ASSIGN: - case BINOP_ASSIGN_MODIFY: - case BINOP_COMMA: - break; - default: - warning - (_("Expression is not an assignment (and might have no effect)")); - } + switch (expr->op->opcode ()) + { + case UNOP_PREINCREMENT: + case UNOP_POSTINCREMENT: + case UNOP_PREDECREMENT: + case UNOP_POSTDECREMENT: + case BINOP_ASSIGN: + case BINOP_ASSIGN_MODIFY: + case BINOP_COMMA: + break; + default: + warning + (_("Expression is not an assignment (and might have no effect)")); + } evaluate_expression (expr.get ()); } diff --git a/gdb/value.c b/gdb/value.c index df0e5c1..9527186 100644 --- a/gdb/value.c +++ b/gdb/value.c @@ -2015,7 +2015,7 @@ init_if_undefined_command (const char* args, int from_tty) /* Validate the expression. Was the expression an assignment? Or even an expression at all? */ - if (expr->op == nullptr || expr->first_opcode () != BINOP_ASSIGN) + if (expr->first_opcode () != BINOP_ASSIGN) error (_("Init-if-undefined requires an assignment expression.")); /* Extract the variable from the parsed expression. */ |