diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/ada-lang.c | 4 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 5b52c37..7c61032 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2015-05-05 Joel Brobecker <brobecker@adacore.com> + * ada-lang.c (ada_value_primitive_packed_val): Use a more + correct address in call to value_at. Adjust call to + value_address accordingly. + +2015-05-05 Joel Brobecker <brobecker@adacore.com> + * ada-valprint.c (ada_val_print_1): Resolve TYPE before trying to print it. diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c index 26f2c52..42f84e4 100644 --- a/gdb/ada-lang.c +++ b/gdb/ada-lang.c @@ -2417,10 +2417,10 @@ ada_value_primitive_packed_val (struct value *obj, const gdb_byte *valaddr, } else if (VALUE_LVAL (obj) == lval_memory && value_lazy (obj)) { - v = value_at (type, value_address (obj)); + v = value_at (type, value_address (obj) + offset); type = value_type (v); bytes = (unsigned char *) alloca (len); - read_memory (value_address (v) + offset, bytes, len); + read_memory (value_address (v), bytes, len); } else { |