https://gcc.gnu.org/bugzilla/show_bug.cgi?id=126623
Bug ID: 126623
Summary: c++filt cannot unmangle _ZTSZZ1XIEEUlNS_EE_EUlS_E_
Product: gcc
Version: 17.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c++
Assignee: unassigned at gcc dot gnu.org
Reporter: tapplencourt at anl dot gov
Target Milestone: ---
Hi,
Sorry if it's not the correct place to report a `libiberty` bug.
In short `libiberty` (tested with upstream
`5ff1facfba558514eae0efaeb70adb91b6c32a5f`) cannot un-mangle
`_ZTSZZ1XIEEUlNS_EE_EUlS_E_` where `llvm::demangle` have no problem to do so
and produce `typeinfo name for X<>::'lambda'(X)::'lambda'(X)`.
I'm not an expert of Itanimun mangling, so I don't know if this mangling is
even correct, and I was not able to make `g++` generate this mangled name.
But `llvm` generate it (I was not able to make a simple reproducer... so you
will need to take my word for it, sorry) , and we need demangle name generated
by llvm-based compiled (sadly?).
```
applenco@aurora-uan-0009:~/project/tmp> c++filt _ZTSZZ1XIEEUlNS_EE_EUlS_E_
_ZTSZZ1XIEEUlNS_EE_EUlS_E_
applenco@aurora-uan-0009:~/project/tmp> c++filt_llvm
'_ZTSZZ1XIEEUlNS_EE_EUlS_E_' # Using ` llvm::demangle`
typeinfo name for X<>::'lambda'(X)::'lambda'(X)
```
Maybe related too #93035