diff options
author | Tom Tromey <tromey@adacore.com> | 2019-11-05 10:12:27 -0700 |
---|---|---|
committer | Tom Tromey <tromey@adacore.com> | 2019-11-14 11:58:50 -0700 |
commit | 55708e99aca33f2ee9036732d778cd5899d2a2b0 (patch) | |
tree | e62533e80ec25aa545539f243bb34d82ec125821 /gdb/ChangeLog | |
parent | 6b92c0d3533b8b01970e6ba5aa92581e027a63c2 (diff) | |
download | gdb-55708e99aca33f2ee9036732d778cd5899d2a2b0.zip gdb-55708e99aca33f2ee9036732d778cd5899d2a2b0.tar.gz gdb-55708e99aca33f2ee9036732d778cd5899d2a2b0.tar.bz2 |
Allow re-assigning to convenience variables
A customer reported somewhat odd gdb behavior, where re-assigning an
array or string to a convenience variable would yield "Too many array
elements". A test case is:
(gdb) p $x = "x"
(gdb) p $x = "xyz"
This patch fixes the problem by making a special case in the evaluator
for assignment to convenience variables, which seems like the correct
behavior.
Note that a previous patch implemented this for Ada, see commit
f411722cb ("Allow re-assigning to convenience variables").
gdb/ChangeLog
2019-11-14 Tom Tromey <tromey@adacore.com>
* eval.c (evaluate_subexp_standard) <BINOP_ASSIGN>: Do not pass an
expected type for the RHS if the LHS is a convenience variable.
gdb/testsuite/ChangeLog
2019-11-14 Tom Tromey <tromey@adacore.com>
* gdb.base/gdbvars.exp (test_convenience_variables): Add
regression tests.
Change-Id: I5e66a2d243931a5c43c7af4bc9f6717464c2477e
Diffstat (limited to 'gdb/ChangeLog')
-rw-r--r-- | gdb/ChangeLog | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 719574f..1a84242 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2019-11-14 Tom Tromey <tromey@adacore.com> + + * eval.c (evaluate_subexp_standard) <BINOP_ASSIGN>: Do not pass an + expected type for the RHS if the LHS is a convenience variable. + 2019-11-14 Simon Marchi <simon.marchi@polymtl.ca> * unittests/vec-utils-selftests.c (unordered_remove_tests::obj): |