DEMANGLE(3EXT) Extended Library Functions DEMANGLE(3EXT)
NAME
demangle, cplus_demangle - decode a C++ encoded symbol name
SYNOPSIS
cc [
flag ... ]
file[
library ... ]
-ldemangle #include <demangle.h>
int cplus_demangle(
const char *symbol,
char *prototype,
size_t size);
DESCRIPTION
The
cplus_demangle() function decodes (demangles) a C++ linker symbol
name (mangled name) into a (partial) C++ prototype, if possible.
C++ mangled names may not have enough information to form a complete
prototype.
The
symbol string argument points to the input mangled name.
The
prototype argument points to a user-specified output string
buffer, of
size bytes.
The
cplus_demangle() function operates on mangled names generated by
SPARCompilers C++ 3.0.1, 4.0.1, 4.1 and 4.2.
The
cplus_demangle() function improves and replaces the
demangle() function.
Refer to the
CC.1,
dem.1, and
c++filt.1 manual pages in the
/opt/SUNWspro/man/man1 directory. These pages are only available
with the SPROcc package.
RETURN VALUES
The
cplus_demangle() function returns the following values:
0 The
symbol argument is a valid mangled name and
prototype contains a (partial) prototype for the
symbol.
DEMANGLE_ENAME The
symbol argument is not a valid mangled name
and the content of
prototype is a copy of the
symbol.
DEMANGLE_ESPACE The
prototype output buffer is too small to
contain the prototype (or the symbol), and the
content of
prototype is undefined.
March 11, 1997 DEMANGLE(3EXT)