OSDN Git Service

* ada-lang.c (ada_evaluate_subexp): [OP_ATR_FIRST, OP_ATR_LAST]
authorJoel Brobecker <brobecker@gnat.com>
Tue, 24 Mar 2009 01:58:22 +0000 (01:58 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Tue, 24 Mar 2009 01:58:22 +0000 (01:58 +0000)
        [OP_ATR_LENGTH]: When using the attribute on a type, make sure
        to get the real type, not the associated typedef.

gdb/ChangeLog
gdb/ada-lang.c

index 02f37a1..7320545 100644 (file)
@@ -1,5 +1,11 @@
 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.
+
+2009-03-23  Joel Brobecker  <brobecker@adacore.com>
+
        * ada-lang.c (ada_get_field_index): Add handling of the case
        when TYPE is a typedef of a struct.
 
index b4e1eb9..b9a0a3d 100644 (file)
@@ -8872,7 +8872,7 @@ ada_evaluate_subexp (struct type *expect_type, struct expression *exp,
           {
             evaluate_subexp (NULL_TYPE, exp, pos, EVAL_SKIP);
             arg1 = NULL;
-            type_arg = exp->elts[pc + 2].type;
+            type_arg = check_typedef (exp->elts[pc + 2].type);
           }
         else
           {