diff options
author | Joel Brobecker <brobecker@gnat.com> | 2011-12-21 07:34:05 +0000 |
---|---|---|
committer | Joel Brobecker <brobecker@gnat.com> | 2011-12-21 07:34:05 +0000 |
commit | bcd9870b9f946ae6bc852c71caef61b42a6601bd (patch) | |
tree | c0d169de6c9edcfe7203df013a85c084ea09558c /gdb/psymtab.c | |
parent | 23bef9c11849e876883ac5c543c20dbd32b17d14 (diff) | |
download | gdb-bcd9870b9f946ae6bc852c71caef61b42a6601bd.tar.gz |
Use symbol search name in expand_symtabs_matching_via_partial...
We are iterating over all symbols in a partial symtab that would
match a given name, so we should match the partial symbols
search name against the given name rather than using the natural
name. In C++, that does not make a difference, but it does in
Ada, because Ada searches using the symbol encoded name...
We also update the generation of the .gdb_index file to match this
change in the search. Although technically an incompatible change,
we do not increment the gdb_index version number, because Ada is
the only language where it would make a difference - except that
this feature is not supported for Ada.
gdb/ChangeLog:
* psymtab.c (expand_symtabs_matching_via_partial): Match
the partial symbols using their SYMBOL_SEARCH_NAME.
* symfile.h (struct quick_symbol_functions): Udate the
documentation of expand_symtabs_matching.
* dwarf2read.c (write_psymbols): Use SYMBOL_SEARCH_NAME instead
of SYMBOL_NATURAL_NAME in index entry.
Diffstat (limited to 'gdb/psymtab.c')
-rw-r--r-- | gdb/psymtab.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gdb/psymtab.c b/gdb/psymtab.c index 74185ccb540..861b30232d7 100644 --- a/gdb/psymtab.c +++ b/gdb/psymtab.c @@ -1305,7 +1305,7 @@ expand_symtabs_matching_via_partial || (kind == TYPES_DOMAIN && SYMBOL_CLASS (*psym) == LOC_TYPEDEF)) && (*name_matcher) (current_language, - SYMBOL_NATURAL_NAME (*psym), data)) + SYMBOL_SEARCH_NAME (*psym), data)) { PSYMTAB_TO_SYMTAB (ps); keep_going = 0; |