* objdump.c (syms2): Removed unused variable.
[deliverable/binutils-gdb.git] / binutils / c++filt.1
CommitLineData
08ad9921
JO
1.\" Copyright (c) 1991 Free Software Foundation
2.\" See section COPYING for conditions for redistribution
3.TH c++filt 1 "June 1993" "cygnus support" "GNU Development Tools"
4.de BP
5.sp
6.ti \-.2i
7\(**
8..
9
10.SH NAME
11c++filt\(em\&demangles C++ symbols
12
13.SH SYNOPSIS
14.B c++filt
15[
16.B -_
17]
18
19.SH DESCRIPTION
20The C++ language provides function overloading, which means that you can
21write many functions with the same name (providing each takes parameters
22of different types). All C++ function names are encoded into a
23low-level assembly label (in some circles this is described as
24@dfn{mangling}). The
25.B c++filt
26program does the inverse mapping: it decodes (\fIdemangles\fR)
27low-level names into user-level names so that the linker can keep
28these overloaded functions from clashing.
29
30Every alphanumeric word (consisting of letters, digits, underscores,
31dollars, or periods) seen in the input is a potential label. If the
32label decodes into a C++ name, the C++ name replaces the low-level
33name in the output.
34
35A typical use of
36.B c++filt
37is to pipe the output of
38.B nm
1889f662 39through it, using
08ad9921
JO
40.B c++filt
41as a filter:
1889f662 42.br
08ad9921
JO
43.RS
44.B nm \fIobjfile\fB | c++filt
45.RE
46
47You can also use
48.B c++filt
49to decipher individual symbols by specifying these symbols on the
50command line.
51
52All results are printed on the standard output.
53
54Note that on some systems, both the C and C++ compilers put an
55underscore in front of every name. (I.e. the C name
56.B foo
57gets the low-level name
58.BR _foo .)
59To remove the leading underscore, specify the option
60.B -_
61on the command line.
62
63.SH "SEE ALSO"
64.RB "`\|" binutils "\|'"
65entry in
66.B
67info\c
68\&;
69.I
70The GNU Binary Utilities\c
71\&, Roland H. Pesch (June 1993).
72
73.SH COPYING
74Copyright (c) 1993 Free Software Foundation, Inc.
75.PP
76Permission is granted to make and distribute verbatim copies of
77this manual provided the copyright notice and this permission notice
78are preserved on all copies.
79.PP
80Permission is granted to copy and distribute modified versions of this
81manual under the conditions for verbatim copying, provided that the
82entire resulting derived work is distributed under the terms of a
83permission notice identical to this one.
84.PP
85Permission is granted to copy and distribute translations of this
86manual into another language, under the above conditions for modified
87versions, except that this permission notice may be included in
88translations approved by the Free Software Foundation instead of in
89the original English.
This page took 0.028026 seconds and 4 git commands to generate.