From: Joel Brobecker <brobecker@adacore.com>
To: Jan Kratochvil <jan.kratochvil@redhat.com>
Cc: gdb-patches@sourceware.org
Subject: Re: [RFA] Use symbol search name in expand_symtabs_matching_via_partial...
Date: Tue, 13 Dec 2011 21:30:00 -0000 [thread overview]
Message-ID: <20111213212547.GR21915@adacore.com> (raw)
In-Reply-To: <20111213204504.GA7129@host2.jankratochvil.net>
> > --- 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))
>
> It will need the same change for .gdb_index in write_psymbols.
>
> It would also mean .gdb_index version should be increased and backward
> compatibility implemented although IMHO it can be ignored for Ada, not sure if
> Ada users deploy .gdb_index.
Thanks for the quick review, Jan. How about the following.
As explained in the revision history, I ended up not incrementing
the version number, because I don't think we have a compatibility
issue. The only language for which it would have made a difference
(search-name != natural-name) is Ada, and the feature is not supported
for Ada. So...
gdb/ChangeLog:
* psymtab.c (expand_symtabs_matching_via_partial): Match
the partial symbols using their SYMBOL_SEARCH_NAME.
* dwarf2read.c (write_psymbols): Use SYMBOL_SEARCH_NAME instead
of SYMBOL_NATURAL_NAME in index entry.
Still testing, but I do not expect any regression.
Thanks,
--
Joel
commit a46ee1ab51430ba315cb20bb46555f5e76d4171e
Author: Joel Brobecker <brobecker@adacore.com>
Date: Tue Dec 13 15:24:53 2011 -0500
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.
* dwarf2read.c (write_psymbols): Use SYMBOL_SEARCH_NAME instead
of SYMBOL_NATURAL_NAME in index entry.
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index c482c43..7905052 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -16890,7 +16890,7 @@ write_psymbols (struct mapped_symtab *symtab,
if (!*slot)
{
*slot = lookup;
- add_index_entry (symtab, SYMBOL_NATURAL_NAME (*psymp), cu_index);
+ add_index_entry (symtab, SYMBOL_SEARCH_NAME (*psymp), cu_index);
}
}
}
diff --git a/gdb/psymtab.c b/gdb/psymtab.c
index 74185cc..861b302 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;
next prev parent reply other threads:[~2011-12-13 21:26 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-12-13 20:45 Joel Brobecker
2011-12-13 21:10 ` Jan Kratochvil
2011-12-13 21:30 ` Joel Brobecker [this message]
2011-12-13 21:33 ` Jan Kratochvil
2011-12-14 0:18 ` Joel Brobecker
2011-12-21 9:30 ` Joel Brobecker
2011-12-20 15:03 ` Tom Tromey
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20111213212547.GR21915@adacore.com \
--to=brobecker@adacore.com \
--cc=gdb-patches@sourceware.org \
--cc=jan.kratochvil@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox