aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2009-03-24 02:07:07 +0000
committerJoel Brobecker <brobecker@gnat.com>2009-03-24 02:07:07 +0000
commit17466c1a8a293601e687da937bd31a78115eaf63 (patch)
tree41aeda0157ca5e50154c6587b57fbc5dd28b91f0 /gdb
parent8008e2653ff2b755fbe7dd61793201721cfdc535 (diff)
downloadgdb-17466c1a8a293601e687da937bd31a78115eaf63.zip
gdb-17466c1a8a293601e687da937bd31a78115eaf63.tar.gz
gdb-17466c1a8a293601e687da937bd31a78115eaf63.tar.bz2
* ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
trying to resolve the type qualification.
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/ada-lang.c2
2 files changed, 6 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 7754d64..aa9fcd3 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2009-03-23 Joel Brobecker <brobecker@adacore.com>
+ * ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
+ trying to resolve the type qualification.
+
+2009-03-23 Joel Brobecker <brobecker@adacore.com>
+
* ada-lang.c (ada_evaluate_subexp) [UNOP_IN_RANGE]: make sure
we try to apply the attribute on the real type, rather than
its associated typedef.
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index f257fb3..6fa4cfa 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -2654,7 +2654,7 @@ resolve_subexp (struct expression **expp, int *pos, int deprocedure_p,
case UNOP_QUAL:
*pos += 3;
- resolve_subexp (expp, pos, 1, exp->elts[pc + 1].type);
+ resolve_subexp (expp, pos, 1, check_typedef (exp->elts[pc + 1].type));
break;
case OP_ATR_MODULUS: