aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoel Brobecker <brobecker@gnat.com>2009-03-24 02:08:23 +0000
committerJoel Brobecker <brobecker@gnat.com>2009-03-24 02:08:23 +0000
commit6cdd57f45ddc8636b0cb899448bf62aaf467e97c (patch)
tree5d8ffe06078395818657c6d32a1b44964878f7c1
parent17466c1a8a293601e687da937bd31a78115eaf63 (diff)
downloadgdb-6cdd57f45ddc8636b0cb899448bf62aaf467e97c.zip
gdb-6cdd57f45ddc8636b0cb899448bf62aaf467e97c.tar.gz
gdb-6cdd57f45ddc8636b0cb899448bf62aaf467e97c.tar.bz2
* ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
before looking up the fields inside our struct type.
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/ada-exp.y1
2 files changed, 6 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index aa9fcd3..d03cb2b 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2009-03-23 Joel Brobecker <brobecker@adacore.com>
+ * ada-exp.y (get_symbol_field_type): Make sure to resolve typedefs
+ before looking up the fields inside our struct type.
+
+2009-03-23 Joel Brobecker <brobecker@adacore.com>
+
* ada-lang.c (resolve_subexp) [UNOP_QUAL]: Resolve typedefs before
trying to resolve the type qualification.
diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y
index 0da0caa..ee0fcf3 100644
--- a/gdb/ada-exp.y
+++ b/gdb/ada-exp.y
@@ -1207,6 +1207,7 @@ get_symbol_field_type (struct symbol *sym, char *encoded_field_name)
if (type == NULL || field_name == NULL)
return NULL;
+ type = check_typedef (type);
while (field_name[0] != '\0')
{