2003-02-24 David Carlton <carlton@math.stanford.edu>
* symtab.c (make_symbol_overload_list): Only read in partial symtabs containing a matching partial symbol.
This commit is contained in:
parent
0fe19209f9
commit
49fa1dc29a
2 changed files with 10 additions and 22 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
2003-02-24 David Carlton <carlton@math.stanford.edu>
|
||||||
|
|
||||||
|
* symtab.c (make_symbol_overload_list): Only read in partial
|
||||||
|
symtabs containing a matching partial symbol.
|
||||||
|
|
||||||
2003-02-24 David Carlton <carlton@math.stanford.edu>
|
2003-02-24 David Carlton <carlton@math.stanford.edu>
|
||||||
|
|
||||||
* symtab.c (lookup_partial_symbol): Use strcmp_iw_ordered to
|
* symtab.c (lookup_partial_symbol): Use strcmp_iw_ordered to
|
||||||
|
|
27
gdb/symtab.c
27
gdb/symtab.c
|
@ -3995,8 +3995,8 @@ make_symbol_overload_list (struct symbol *fsym)
|
||||||
sym_return_val = (struct symbol **) xmalloc ((sym_return_val_size + 1) * sizeof (struct symbol *));
|
sym_return_val = (struct symbol **) xmalloc ((sym_return_val_size + 1) * sizeof (struct symbol *));
|
||||||
sym_return_val[0] = NULL;
|
sym_return_val[0] = NULL;
|
||||||
|
|
||||||
/* Look through the partial symtabs for all symbols which begin
|
/* Read in all partial symtabs containing a partial symbol named
|
||||||
by matching OLOAD_NAME. Make sure we read that symbol table in. */
|
OLOAD_NAME. */
|
||||||
|
|
||||||
ALL_PSYMTABS (objfile, ps)
|
ALL_PSYMTABS (objfile, ps)
|
||||||
{
|
{
|
||||||
|
@ -4007,26 +4007,9 @@ make_symbol_overload_list (struct symbol *fsym)
|
||||||
if (ps->readin)
|
if (ps->readin)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
for (psym = objfile->global_psymbols.list + ps->globals_offset;
|
if ((lookup_partial_symbol (ps, oload_name, 1, VAR_NAMESPACE) != NULL)
|
||||||
psym < (objfile->global_psymbols.list + ps->globals_offset
|
|| (lookup_partial_symbol (ps, oload_name, 0, VAR_NAMESPACE) != NULL))
|
||||||
+ ps->n_global_syms);
|
PSYMTAB_TO_SYMTAB (ps);
|
||||||
psym++)
|
|
||||||
{
|
|
||||||
/* If interrupted, then quit. */
|
|
||||||
QUIT;
|
|
||||||
/* This will cause the symbol table to be read if it has not yet been */
|
|
||||||
s = PSYMTAB_TO_SYMTAB (ps);
|
|
||||||
}
|
|
||||||
|
|
||||||
for (psym = objfile->static_psymbols.list + ps->statics_offset;
|
|
||||||
psym < (objfile->static_psymbols.list + ps->statics_offset
|
|
||||||
+ ps->n_static_syms);
|
|
||||||
psym++)
|
|
||||||
{
|
|
||||||
QUIT;
|
|
||||||
/* This will cause the symbol table to be read if it has not yet been */
|
|
||||||
s = PSYMTAB_TO_SYMTAB (ps);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Search upwards from currently selected frame (so that we can
|
/* Search upwards from currently selected frame (so that we can
|
||||||
|
|
Loading…
Reference in a new issue