Demangle C++ and Java symbols
c++filt_variant [options] [symbol…]
where c++filt_variant depends on the target platform, as follows:
Target platform | c++filt_variant |
---|---|
ARMv7 | ntoarmv7-c++filt |
AArch64 | ntoaarch64-c++filt |
x86 | ntox86-c++filt |
x86 64-bit | ntox86_64-c++filt |
Linux, Mac, Microsoft Windows
See the Binutils documentation on the GNU website at https://www.gnu.org/software/binutils/manual/.
The C++ and Java languages provides function overloading, which means that you can write many functions with the same name (providing each takes parameters of different types). All C++ and Java function names are encoded into a low-level assembly label (this process is known as mangling). The c++filt program does the inverse mapping: it decodes (demangles) low-level names into user-level names so that the linker can keep these overloaded functions from clashing.
For more information, see the Binutils documentation on the GNU website at https://www.gnu.org/software/binutils/manual/.
GNU