aboutsummaryrefslogtreecommitdiff
path: root/gdb/symtab.c
diff options
context:
space:
mode:
authorKeith Seitz <keiths@redhat.com>2010-07-23 17:42:13 +0000
committerKeith Seitz <keiths@redhat.com>2010-07-23 17:42:13 +0000
commit54ec275af07c4f9cfbe0cc23bbb6c2a569437e1a (patch)
tree31a7f3daca5dc9bce0d49ac00d3b9d626ffe1623 /gdb/symtab.c
parent1cd986c58543909402a33d84b7821d0d7be17005 (diff)
downloadgdb-54ec275af07c4f9cfbe0cc23bbb6c2a569437e1a.zip
gdb-54ec275af07c4f9cfbe0cc23bbb6c2a569437e1a.tar.gz
gdb-54ec275af07c4f9cfbe0cc23bbb6c2a569437e1a.tar.bz2
* symtab.c (basic_lookup_transparent_type): Call pre-expand
hook for STATIC_BLOCK types, too.
Diffstat (limited to 'gdb/symtab.c')
-rw-r--r--gdb/symtab.c19
1 files changed, 13 insertions, 6 deletions
diff --git a/gdb/symtab.c b/gdb/symtab.c
index b0e7061..e125c84 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -1642,14 +1642,21 @@ basic_lookup_transparent_type (const char *name)
conversion on the fly and return the found symbol.
*/
- ALL_PRIMARY_SYMTABS (objfile, s)
+ ALL_OBJFILES (objfile)
{
- bv = BLOCKVECTOR (s);
- block = BLOCKVECTOR_BLOCK (bv, STATIC_BLOCK);
- sym = lookup_block_symbol (block, name, STRUCT_DOMAIN);
- if (sym && !TYPE_IS_OPAQUE (SYMBOL_TYPE (sym)))
+ if (objfile->sf)
+ objfile->sf->qf->pre_expand_symtabs_matching (objfile, STATIC_BLOCK,
+ name, STRUCT_DOMAIN);
+
+ ALL_OBJFILE_SYMTABS (objfile, s)
{
- return SYMBOL_TYPE (sym);
+ bv = BLOCKVECTOR (s);
+ block = BLOCKVECTOR_BLOCK (bv, STATIC_BLOCK);
+ sym = lookup_block_symbol (block, name, STRUCT_DOMAIN);
+ if (sym && !TYPE_IS_OPAQUE (SYMBOL_TYPE (sym)))
+ {
+ return SYMBOL_TYPE (sym);
+ }
}
}