This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: C++ Typedefs and symbol tables


On Mon, Aug 20, 2007 at 06:35:29PM +0100, Andrew STUBBS wrote:
> Daniel Jacobowitz wrote:
> > Check whether you are ending up with a search based on the function's
> > symbol or minsym.  The mangled name always uses the canonical type
> > name (for obvious ABI reasons).
> 
> Symbol or minsym? Sorry, I'm not at all familiar with this area of the 
> debugger.

Symbols come from .debug_info and have type information.  minsyms come
from the ELF .symtab section, and do not.

> > Yes, but it's a lot of work.  We can not currently canonicalize
> > anything during lookup because we do not canonicalize during symbol
> > reading; and just turning that on slows things down considerably.  The
> > cp-names.y parser was intended for exactly this.
> 
> Surely converting the (typically) 2-3 typenames in a signature, such that they 
> match the canonical form used by the ABI, would not take much time, would it?

2-3 typenames is not typical, in C++ programs.  It added around 30%
time in my testing.

-- 
Daniel Jacobowitz
CodeSourcery


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]