This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: Crash regression gdb.cp/no-dmgl-verbose.exp: Re: [RFA 2/3] Ada: allow unqualified function names in linespecs
Hi Jan,
> On Thu, 26 Jan 2012 11:21:48 +0100, Jan Kratochvil wrote:
> > http://people.redhat.com/jkratoch/no-dmgl-verbose.o.gz
> > ./gdb -nx no-dmgl-verbose.o -ex "break 'f(std::string)'"
> > [...]
> > Reading symbols from no-dmgl-verbose.o...done.
> > Segmentation fault
>
> Yes, not a real regression, filed for it PR 13627::
> multiple .debug_types per objfile are not supported
> http://sourceware.org/bugzilla/show_bug.cgi?id=13627
I'm trying to understand how the patch you quoted could have been
triggering the problem, even if it was already a latent bug. As far
as I can tell, for non-Ada units, the only difference is that
I replaced a call to strcmp_iw_ordered by a call to strcmp_iw.
What if you put strcmp_iw_ordered back in the following hunk?
@@ -349,6 +360,13 @@ iterate_over_all_matching_symtabs (const char *name,
{
struct objfile *objfile;
struct program_space *pspace;
+ struct symbol_matcher_data matcher_data;
+
+ matcher_data.lookup_name = name;
+ matcher_data.symbol_name_match_p =
+ current_language->la_get_symbol_name_match_p != NULL
+ ? current_language->la_get_symbol_name_match_p (name)
+ : strcmp_iw;
Would that mask the crash? If it did, I would *not* understand why,
but that's the only change of behavior I can see from the patch.
I couldn't find out much from the backtraces themselves...
--
Joel