[lldb-dev] Anonymous Namespace - Bug 15302

Alex Pepper apepper at blueshiftinc.com
Mon Jul 28 14:26:51 PDT 2014


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.

I am looking for suggestions on how to resolve this, should LLDB be
inferring the namespace from the hierarchy somehow or should GCC be
outputting the mangled symbol?

Alex
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-dev/attachments/20140728/4d829eb2/attachment.html>


More information about the lldb-dev mailing list