Thanks for information and the suggestions guys.  I am looking into another 
issue right now but I may come back to this later and will followup at that 
time.

- Alex

On Jul 29, 2014, at 11:33 AM, Reid Kleckner <[email protected]> wrote:

> On Mon, Jul 28, 2014 at 5:08 PM, Greg Clayton <[email protected]> wrote:
> 
> > On Jul 28, 2014, at 2:26 PM, Alex Pepper <[email protected]> wrote:
> >
> > I investigated bug 15302, which is described as:
> >
> > "LLDB does not print 'anonymous namespace' prefix for variable names (if 
> > inferior built with GCC on Linux)"
> >
> > What I found was that the GCC dwarf data does not contain a mangled name 
> > for a variable defined in an anonymous namespace, unlike clang.  LLDB 
> > VariableObject depends on the mangled name to identify the anonymous 
> > namespace for a variable, so in the test case it does no print the 
> > (anonymous namespace) prefix.  I checked the dwarf data using dwarfdump and 
> > nm.  In the case of dwarfdump the variable is a child of the anonymous 
> > namespace but there is no mangled name, but when I use nm to dump the 
> > symbols it displays the mangled name.  I am not sure if this means nm is 
> > generating the name or getting the symbol from somewhere else.
> 
> nm only looks at the symbol table and the symbol table will contain only the 
> mangled name for the variable.
> 
> Yeah, I would try to solve this by looking at .symtab, which is where nm gets 
> the mangled name.  I doubt gcc will start emitting linkage names into dwarf 
> soon enough to be useful.  The dwarf linkage name might also be missing due 
> to -gline-tables-only / -gmlt type flags.

_______________________________________________
lldb-dev mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/lldb-dev

Reply via email to