diff options
author | Joel Brobecker <brobecker@gnat.com> | 2009-03-24 02:00:51 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2009-03-24 02:00:51 +0000 |
commit | 31dedfee60c1832aa6c7d7376fce432e94798471 (patch) | |
tree | 77462e04786c09517de5a2db7b7e54e427313bfa | |
parent | 5bc23cb38a1dcffee544f89ecfc25b5774bdd45d (diff) | |
download | gdb-31dedfee60c1832aa6c7d7376fce432e94798471.zip gdb-31dedfee60c1832aa6c7d7376fce432e94798471.tar.gz gdb-31dedfee60c1832aa6c7d7376fce432e94798471.tar.bz2 |
* ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef
to make sure we try to get the modulus of the actual type, not the
associated typedef.
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/ada-lang.c | 2 |
2 files changed, 7 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 7320545..f6f8c29 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,11 @@ 2009-03-23 Joel Brobecker <brobecker@adacore.com> + * ada-lang.c (ada_evaluate_subexp) [OP_ATR_MODULUS]: Use check_typdef + to make sure we try to get the modulus of the actual type, not the + associated typedef. + +2009-03-23 Joel Brobecker <brobecker@adacore.com> + * ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST] [OP_ATR_LENGTH]: When using the attribute on a type, make sure to get the real type, not the associated typedef. diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c index b9a0a3d..38902af 100644 --- a/gdb/ada-lang.c +++ b/gdb/ada-lang.c @@ -9010,7 +9010,7 @@ ada_evaluate_subexp (struct type *expect_type, struct expression *exp, case OP_ATR_MODULUS: { - struct type *type_arg = exp->elts[pc + 2].type; + struct type *type_arg = check_typedef (exp->elts[pc + 2].type); evaluate_subexp (NULL_TYPE, exp, pos, EVAL_SKIP); if (noside == EVAL_SKIP) |