LLVM-CXXFILT(1)
β¨ LLVM-CXXFILT(1) β¨
okay bestie, so this is the LLVM manual page for llvm-cxxfilt and I'm about to make demangling symbols sound as cute as it actually is π
πΈ NAME πΈ
llvm-cxxfilt β the LLVM symbol name demangler π
π¦ SYNOPSIS π¦
llvm-cxxfilt [options] [mangled namesβ¦]
π DESCRIPTION π
So llvm-cxxfilt is a symbol demangler, right? It's literally built to be a drop-in replacement for the GNU c++filt tool π«Ά It takes a bunch of symbol names and prints their demangled form on the standard output stream. And if a name can't be demangled? No drama, no error, it just gets printed as is. Iconic behaviour honestly.
And if you don't hand it any names on the command-line? Then it just reads them interactively from the standard input stream. But here's the detail you need to know, bestie: when it's reading from standard input, each input line gets split on characters that are not part of valid Itanium name manglings. Like, characters that aren't alphanumeric, '.', '$', or '_'. And the separators between names? Those get copied to the output as is. Preserved. Untouched. Periodt β¨
π EXAMPLE π
$ llvm-cxxfilt _Z3foov _Z3bari not_mangled
foo()
bar(int)
not_mangled
$ cat input.txt
| _Z3foov *** _Z3bari *** not_mangled |
$ llvm-cxxfilt < input.txt
| foo() *** bar(int) *** not_mangled |
see how not_mangled just... stays not_mangled? she's unbothered π and the *** separators survived the whole trip, as promised.
β¨ OPTIONS β¨
--format=<value>,-sβ which mangling scheme to assume. Valid values areauto(that's the default, it auto-detects the style) andgnu(assume the GNU/Itanium style).--help,-hβ prints a summary of the command line options. cute of her.--no-strip-underscore,-nβ do not strip a leading underscore. This is the default for all platforms except Mach-O based hosts.--strip-underscore,-_β strips a single leading underscore, if there is one, from each input name before demangling. This is on by default on Mach-O based platforms.--types,-tβ attempts to demangle names as type names as well as function names. multitasking queen π--versionβ displays the version of thellvm-cxxfiltexecutable.@<FILE>β read command-line options from the response file <FILE>.
π₯ EXIT STATUS π₯
llvm-cxxfilt returns 0 unless it encounters a usage error β and in that case, a non-zero exit code gets returned. so basically, zero means we're good π
π SEE ALSO π
π AUTHOR π
Maintained by the LLVM Team (https://llvm.org/). legends, fr fr.
π COPYRIGHT π
2003-2024, LLVM Project
and that's the whole vibe check, bestie π§ this was the LLVM 15 release of the page, dated 2024-04-14, and you can find it chilling in the LLVM manual section. go demangle something gorgeous π
β¨
π¦ where this page comes from
- ubuntu noble: llvm-16 1:16.0.6-23ubuntu4 Β· APACHE-2-LLVM-EXCEPTIONS
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms