MirOS Manual: c++filt(1)

C++FILT(1)            GNU Development Tools            C++FILT(1)


     c++filt - Demangle C++ and Java symbols.


     c++filt [-_|--strip-underscores]
             [-s format|--format=format]
             [--help]  [--version]  [symbol...]


     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 [1] 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

     Every alphanumeric word (consisting of letters, digits,
     underscores, dollars, or periods) seen in the input is a
     potential label.  If the label decodes into a C++ name, the
     C++ name replaces the low-level name in the output.

     You can use c++filt to decipher individual symbols:

             c++filt <symbol>

     If no symbol arguments are given, c++filt reads symbol names
     from the standard input and writes the demangled names to
     the standard output.  All results are printed on the
     standard output.


         On some systems, both the C and C++ compilers put an
         underscore in front of every name.  For example, the C
         name "foo" gets the low-level name "_foo".  This option
         removes the initial underscore.  Whether c++filt removes
         the underscore by default is target dependent.

         Prints demangled names using Java syntax.  The default
         is to use C++ syntax.


binutils-050707            2016-04-09                           1


         Do not remove the initial underscore.

         When demangling the name of a function, do not display
         the types of the function's parameters.

     -s format
         c++filt can decode various methods of mangling, used by
         different compilers.  The argument to this option
         selects which method it uses:

             Automatic selection based on executable (the default

             the one used by the GNU C++ compiler (g++)

             the one used by the Lucid compiler (lcc)

             the one specified by the C++ Annotated Reference

             the one used by the HP compiler (aCC)

             the one used by the EDG compiler

             the one used by the GNU C++ compiler (g++) with the
             V3 ABI.

             the one used by the GNU Java compiler (gcj)

             the one used by the GNU Ada compiler (GNAT).

         Print a summary of the options to c++filt and exit.

         Print the version number of c++filt and exit.


     1.  MS-DOS does not allow "+" characters in file names, so
         on MS-DOS this program is named CXXFILT.

binutils-050707            2016-04-09                           2



     the Info entries for binutils.


     Foundation, Inc.

     Permission is granted to copy, distribute and/or modify this
     document under the terms of the GNU Free Documentation
     License, Version 1.1 or any later version published by the
     Free Software Foundation; with no Invariant Sections, with
     of the license is included in the section entitled ``GNU
     Free Documentation License''.

binutils-050707            2016-04-09                           3


This product includes material provided by mirabilos.
