[PATCH][C++] Fix PR29433, make C++ use a lot less time/memory

Mark Mitchell mark@codesourcery.com
Wed Feb 21 09:08:00 GMT 2007


Michael Matz wrote:

Thanks for following up on this patch.  Clearly, the memory/speed impact
is huge, and getting this into G++ would be excellent.

>> Is there some way we can lose the initial scope?
> 
> That's better, but is it really correct?  Think about a name like:
> 
>   N1::TA<N1::A>

I spotted the same issue as Daniel.  I think that you do need to fix
this, buy threading a flag down through the diagnostic routines to cause
it to omit the qualifier on the (outermost) declarator.

> (the DIE being nested in the one for namespace N1).  Current g++ would 
> emit the name "TA<N1::A>", and I guess gdb doesn't try to fiddle with the 
> template arguments itself, so that would work.

Right, for the example above, I think "TA<N1::A>" is fine.  Obviously,
in the perfect future, we have DWARF info for the template arguments,
and GDB can decide whether to say "<N1::A>" or just "A", as it pleases,
and depending on context.

Thanks,

-- 
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713



More information about the Gcc-patches mailing list