[Lldb-commits] [PATCH] D10744: Fix demangling of names if required by language

Greg Clayton clayborg at gmail.com
Tue Jul 7 14:43:16 PDT 2015


I understand demangling just fine, I just don't like the way this patch adds functions that shouldn't need to exist. No one should be removing a mangling and replacing with another by  patching up function names after they have been demangled.

I don't know how you can claim we don't know the language in the DWARF since we always know the compile unit language for _any_ DIE in the DWARF.

We won't know the language for symbols in object file symbol tables, but we always do for DWARF.

The other problem is we might have two symbols, one from Pascal and one from C++ that could have the same mangled name for different private non-exported symbols in two different shared libraries like "foo::bar" in C++ and "foo.bar" in pascal. Are there really no differences in the mangling for two such functions? Your current patch will just change the mangling for the C++ one over to use the pascal demangling and that will introduce a bug. It will only introduce the bug if the mangled name from pascal has ever been accessed, otherwise it won't change it over. This needs to be fixed in another way.


Repository:
  rL LLVM

http://reviews.llvm.org/D10744







More information about the lldb-commits mailing list