This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: [rfa+6.1]: Fix gcc 3.4 regression in gdb.cp/namespace.exp
- From: Elena Zannoni <ezannoni at redhat dot com>
- To: David Carlton <carlton at kealia dot com>
- Cc: gdb-patches at sources dot redhat dot com,Daniel Jacobowitz <drow at mvista dot com>, Jim Blandy <jimb at redhat dot com>,Elena Zannoni <ezannoni at redhat dot com>
- Date: Tue, 16 Mar 2004 15:33:29 -0500
- Subject: Re: [rfa+6.1]: Fix gcc 3.4 regression in gdb.cp/namespace.exp
- References: <yf2brmx3aia.fsf@hawaii.kealia.com><yf2ptbc1wf0.fsf@hawaii.kealia.com><yf2llm01u41.fsf_-_@hawaii.kealia.com>
David Carlton writes:
> On Tue, 16 Mar 2004 10:25:39 -0800, David Carlton <carlton@kealia.com> said:
>
> > So what's the correct fix here? I tend to think that the code would
> > be easier to understand if we only generated symbols while going
> > through the code in the obvious tree order (calling functions named
> > process_XXX, ideally), instead of while following various
> > cross-references (which we would only do via functions named read_XXX,
> > ideally). Is that a reasonable hope? If so, it seems like the
> > correct fix would be to change process_structure_scope to call
> > process_die on all of its children, whether or not the current die is
> > a declaration. I'll play around with a patch like that - it should be
> > safe, I hope, since process_structure_scope is only called from
> > process_die, so we shouldn't be generating symbols twice.
>
> Here's a patch implementing that. It looks messier than it is - all I
> did was move the loop over children before the test for whether or not
> we're a declaration. I've tested it on mainline with
> i686-pc-linux-gnu, DWARF-2, and four different GCC versions; no new
> regressions, and it fixes the regression in question. Is it okay to
> commit? If so, is it also okay for 6.1 (assuming that the tests pass
> there as well, which I'm about to start checking)?
Fine, yes.
Maybe Daniel should have a look too?
elena