The Jargon File (version 4.4.7, 29 Dec 2003):
mangled name
n.
A name, appearing in a C++ object file, that is a coded representation of
the object declaration as it appears in the source. Mangled names are used
because C++ allows multiple objects to have the same name, as long as they
are distinguishable in some other way, such as by having different
parameter types. Thus, the internal name must have that additional
information embedded in it, using the limited character set allowed by most
linkers. For instance, one popular compiler encodes the standard library
function declaration ?memchr(const void*,int,unsigned int)? as ?
@memchr$qpxviui?.