* psymtab.c (lookup_symbol_aux_psymtabs): New variable stab_best.  Use
	it as a fallback for TYPE_IS_OPAQUE.
	* symfile.h (struct quick_symbol_functions): Mention TYPE_OPAQUE
	symbols for lookup_symbol.

gdb/testsuite/
	* gdb.dwarf2/dw2-icc-opaque.S: Add debug_info_seg3 and
	.debug_abbrev_seg3.
This commit is contained in:
Jan Kratochvil
2012-05-24 22:14:36 +00:00
parent 685b110556
commit bfb05775e6
5 changed files with 74 additions and 3 deletions

View File

@ -510,6 +510,7 @@ lookup_symbol_aux_psymtabs (struct objfile *objfile,
{
struct partial_symtab *ps;
const int psymtab_index = (block_index == GLOBAL_BLOCK ? 1 : 0);
struct symtab *stab_best = NULL;
ALL_OBJFILE_PSYMTABS_REQUIRED (objfile, ps)
{
@ -530,13 +531,18 @@ lookup_symbol_aux_psymtabs (struct objfile *objfile,
}
if (sym && strcmp_iw (SYMBOL_SEARCH_NAME (sym), name) == 0)
return stab;
{
if (!TYPE_IS_OPAQUE (SYMBOL_TYPE (sym)))
return stab;
stab_best = stab;
}
/* Keep looking through other psymtabs. */
}
}
return NULL;
return stab_best;
}
/* Look in PST for a symbol in DOMAIN whose name matches NAME. Search