diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 8fd87b5303..763e988564 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-07-23 Keith Seitz + + * symtab.c (basic_lookup_transparent_type): Call pre-expand + hook for STATIC_BLOCK types, too. + 2010-07-23 Keith Seitz * dwarf2read.c: Remove unused typedef dwarf2_cu_per_cu_data_ptr diff --git a/gdb/symtab.c b/gdb/symtab.c index b0e7061cd4..e125c84eb3 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); + } } }