Michael137 wrote: > > Other C and C++ names don't have it in DWARF though (even on Windows), as > > your Godbolt link demonstrates. > > > > I didn't notice this at first, you're right. With PDB, you get these names: > > ``` > > 431284 | S_PUB32 [size = 28] `_CFuncCCall` > > flags = function, addr = 0001:25168 > > ``` > > My guess is that's because it's created by the linker and not the compiler. > > > > > I'm still not 100% sure which level we'd want to strip these symbols at. > > For Mach-O, where we have the `_` prefix too, LLDB strips the prefix when > > parsing the symbol table. > > > > For the time being, we could strip only the __cdecl prefix in PDB to match > DWARF and open an issue for the mangling of other calling conventions.
Sounds like a good compromise. Btw, @al45tair pointed out to me that mangled names can appear in multiple places in PDB. One has prefixed mangled names and the other doesnt (i think the one per module doesnt). So you have to make sure we only strip the ones that are actually prefixed https://github.com/llvm/llvm-project/pull/160930 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
