* Makefile.in: Revert 2001-06-17.
[deliverable/binutils-gdb.git] / binutils / cxxfilt.man
CommitLineData
16b2b71c
NC
1.\" Automatically generated by Pod::Man version 1.02
2.\" Wed May 30 12:24:30 2001
3.\"
4.\" Standard preamble:
5.\" ======================================================================
6.de Sh \" Subsection heading
0285c67d
NC
7.br
8.if t .Sp
9.ne 5
10.PP
11\fB\\$1\fR
12.PP
13..
16b2b71c 14.de Sp \" Vertical space (when we can't use .PP)
0285c67d
NC
15.if t .sp .5v
16.if n .sp
17..
16b2b71c 18.de Ip \" List item
0285c67d
NC
19.br
20.ie \\n(.$>=3 .ne \\$3
21.el .ne 3
22.IP "\\$1" \\$2
23..
16b2b71c 24.de Vb \" Begin verbatim text
0285c67d
NC
25.ft CW
26.nf
27.ne \\$1
252b5132 28..
16b2b71c 29.de Ve \" End verbatim text
0285c67d 30.ft R
252b5132 31
0285c67d
NC
32.fi
33..
16b2b71c
NC
34.\" Set up some character translations and predefined strings. \*(-- will
35.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
36.\" double quote, and \*(R" will give a right double quote. | will give a
37.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used
38.\" to do unbreakable dashes and therefore won't be available. \*(C` and
39.\" \*(C' expand to `' in nroff, nothing in troff, for use with C<>
0285c67d 40.tr \(*W-|\(bv\*(Tr
16b2b71c 41.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
0285c67d 42.ie n \{\
16b2b71c
NC
43. ds -- \(*W-
44. ds PI pi
45. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
46. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
47. ds L" ""
48. ds R" ""
49. ds C` `
50. ds C' '
0285c67d
NC
51'br\}
52.el\{\
16b2b71c
NC
53. ds -- \|\(em\|
54. ds PI \(*p
55. ds L" ``
56. ds R" ''
0285c67d 57'br\}
16b2b71c
NC
58.\"
59.\" If the F register is turned on, we'll generate index entries on stderr
60.\" for titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and
61.\" index entries marked with X<> in POD. Of course, you'll have to process
62.\" the output yourself in some meaningful fashion.
63.if \nF \{\
64. de IX
65. tm Index:\\$1\t\\n%\t"\\$2"
66. .
67. nr % 0
68. rr F
0285c67d 69.\}
16b2b71c
NC
70.\"
71.\" For nroff, turn off justification. Always turn off hyphenation; it
72.\" makes way too many mistakes in technical documents.
73.hy 0
74.\"
75.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
76.\" Fear. Run. Save yourself. No user-serviceable parts.
0285c67d 77.bd B 3
16b2b71c 78. \" fudge factors for nroff and troff
0285c67d 79.if n \{\
16b2b71c
NC
80. ds #H 0
81. ds #V .8m
82. ds #F .3m
83. ds #[ \f1
84. ds #] \fP
0285c67d
NC
85.\}
86.if t \{\
16b2b71c
NC
87. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
88. ds #V .6m
89. ds #F 0
90. ds #[ \&
91. ds #] \&
0285c67d 92.\}
16b2b71c 93. \" simple accents for nroff and troff
0285c67d 94.if n \{\
16b2b71c
NC
95. ds ' \&
96. ds ` \&
97. ds ^ \&
98. ds , \&
99. ds ~ ~
100. ds /
0285c67d
NC
101.\}
102.if t \{\
16b2b71c
NC
103. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
104. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
105. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
106. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
107. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
108. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
0285c67d 109.\}
16b2b71c 110. \" troff and (daisy-wheel) nroff accents
0285c67d
NC
111.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
112.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
0285c67d
NC
113.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
114.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
115.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
116.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
117.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
118.ds ae a\h'-(\w'a'u*4/10)'e
119.ds Ae A\h'-(\w'A'u*4/10)'E
16b2b71c 120. \" corrections for vroff
0285c67d
NC
121.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
122.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
16b2b71c 123. \" for low resolution devices (crt and lpr)
0285c67d
NC
124.if \n(.H>23 .if \n(.V>19 \
125\{\
16b2b71c
NC
126. ds : e
127. ds 8 ss
128. ds o a
129. ds d- d\h'-1'\(ga
130. ds D- D\h'-1'\(hy
131. ds th \o'bp'
132. ds Th \o'LP'
133. ds ae ae
134. ds Ae AE
0285c67d
NC
135.\}
136.rm #[ #] #H #V #F C
16b2b71c
NC
137.\" ======================================================================
138.\"
139.IX Title "CXXFILT.MAN 1"
140.TH CXXFILT.MAN 1 "binutils-2.11.90" "2001-05-30" "GNU"
141.UC
0285c67d
NC
142.SH "NAME"
143cxxfilt \- Demangle \*(C+ and Java symbols.
144.SH "SYNOPSIS"
16b2b71c
NC
145.IX Header "SYNOPSIS"
146c++filt [ \-_ | \-\-strip-underscores ]
147 [ \-j | \-\-java ]
148 [ \-n | \-\-no-strip-underscores ]
149 [ \-s \fIformat\fR | \-\-format=\fIformat\fR ]
150 [ \-\-help ] [ \-\-version ] [ \fIsymbol\fR... ]
0285c67d 151.SH "DESCRIPTION"
16b2b71c 152.IX Header "DESCRIPTION"
0285c67d
NC
153The \*(C+ and Java languages provides function overloading, which means
154that you can write many functions with the same name (providing each
155takes parameters of different types). All \*(C+ and Java function names
156are encoded into a low-level assembly label (this process is known as
16b2b71c 157\&\fImangling\fR). The \f(CW\*(C`c++filt\*(C'\fR
0285c67d
NC
158[1]
159program does the inverse mapping: it decodes (\fIdemangles\fR) low-level
160names into user-level names so that the linker can keep these overloaded
161functions from clashing.
252b5132
RH
162.PP
163Every alphanumeric word (consisting of letters, digits, underscores,
164dollars, or periods) seen in the input is a potential label. If the
0285c67d 165label decodes into a \*(C+ name, the \*(C+ name replaces the low-level
252b5132
RH
166name in the output.
167.PP
16b2b71c 168You can use \f(CW\*(C`c++filt\*(C'\fR to decipher individual symbols:
252b5132 169.PP
16b2b71c 170.Vb 1
0285c67d
NC
171\& c++filt I<symbol>
172.Ve
16b2b71c 173If no \fIsymbol\fR arguments are given, \f(CW\*(C`c++filt\*(C'\fR reads symbol
0285c67d
NC
174names from the standard input and writes the demangled names to the
175standard output. All results are printed on the standard output.
176.SH "OPTIONS"
16b2b71c
NC
177.IX Header "OPTIONS"
178.Ip "\f(CW\*(C`\-_\*(C'\fR" 4
179.IX Item "-_"
180.Ip "\f(CW\*(C`\-\-strip\-underscores\*(C'\fR" 4
181.IX Item "--strip-underscores"
0285c67d 182On some systems, both the C and \*(C+ compilers put an underscore in front
16b2b71c
NC
183of every name. For example, the C name \f(CW\*(C`foo\*(C'\fR gets the low-level
184name \f(CW\*(C`_foo\*(C'\fR. This option removes the initial underscore. Whether
185\&\f(CW\*(C`c++filt\*(C'\fR removes the underscore by default is target dependent.
186.Ip "\f(CW\*(C`\-j\*(C'\fR" 4
187.IX Item "-j"
188.Ip "\f(CW\*(C`\-\-java\*(C'\fR" 4
189.IX Item "--java"
0285c67d
NC
190Prints demangled names using Java syntax. The default is to use \*(C+
191syntax.
16b2b71c
NC
192.Ip "\f(CW\*(C`\-n\*(C'\fR" 4
193.IX Item "-n"
194.Ip "\f(CW\*(C`\-\-no\-strip\-underscores\*(C'\fR" 4
195.IX Item "--no-strip-underscores"
0285c67d 196Do not remove the initial underscore.
16b2b71c
NC
197.Ip "\f(CW\*(C`\-s \f(CIformat\f(CW\*(C'\fR" 4
198.IX Item "-s format"
199.Ip "\f(CW\*(C`\-\-format=\f(CIformat\f(CW\*(C'\fR" 4
200.IX Item "--format=format"
201\&\s-1GNU\s0 \f(CW\*(C`nm\*(C'\fR can decode three different methods of mangling, used by
0285c67d
NC
202different \*(C+ compilers. The argument to this option selects which
203method it uses:
16b2b71c
NC
204.RS 4
205.Ip "\f(CW\*(C`gnu\*(C'\fR" 4
206.IX Item "gnu"
0285c67d 207the one used by the \s-1GNU\s0 compiler (the default method)
16b2b71c
NC
208.Ip "\f(CW\*(C`lucid\*(C'\fR" 4
209.IX Item "lucid"
0285c67d 210the one used by the Lucid compiler
16b2b71c
NC
211.Ip "\f(CW\*(C`arm\*(C'\fR" 4
212.IX Item "arm"
0285c67d 213the one specified by the \*(C+ Annotated Reference Manual
16b2b71c
NC
214.Ip "\f(CW\*(C`hp\*(C'\fR" 4
215.IX Item "hp"
0285c67d 216the one used by the \s-1HP\s0 compiler
16b2b71c
NC
217.Ip "\f(CW\*(C`edg\*(C'\fR" 4
218.IX Item "edg"
0285c67d 219the one used by the \s-1EDG\s0 compiler
16b2b71c
NC
220.Ip "\f(CW\*(C`gnu\-new\-abi\*(C'\fR" 4
221.IX Item "gnu-new-abi"
0285c67d 222the one used by the \s-1GNU\s0 compiler with the new \s-1ABI\s0.
16b2b71c
NC
223.RE
224.RS 4
225.RE
226.Ip "\f(CW\*(C`\-\-help\*(C'\fR" 4
227.IX Item "--help"
228Print a summary of the options to \f(CW\*(C`c++filt\*(C'\fR and exit.
229.Ip "\f(CW\*(C`\-\-version\*(C'\fR" 4
230.IX Item "--version"
231Print the version number of \f(CW\*(C`c++filt\*(C'\fR and exit.
0285c67d 232.SH "FOOTNOTES"
16b2b71c 233.IX Header "FOOTNOTES"
0285c67d 234.Ip "1." 4
16b2b71c
NC
235\&\s-1MS-DOS\s0 does not allow \f(CW\*(C`+\*(C'\fR characters in file names, so on
236\&\s-1MS-DOS\s0 this program is named \f(CW\*(C`cxxfilt\*(C'\fR.
252b5132 237.SH "SEE ALSO"
16b2b71c 238.IX Header "SEE ALSO"
0285c67d
NC
239the Info entries for \fIbinutils\fR.
240.SH "COPYRIGHT"
16b2b71c 241.IX Header "COPYRIGHT"
0285c67d 242Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
252b5132 243.PP
0285c67d 244Permission is granted to copy, distribute and/or modify this document
16b2b71c 245under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.1
0285c67d
NC
246or any later version published by the Free Software Foundation;
247with no Invariant Sections, with no Front-Cover Texts, and with no
248Back-Cover Texts. A copy of the license is included in the
16b2b71c 249section entitled \*(L"\s-1GNU\s0 Free Documentation License\*(R".
This page took 0.1199 seconds and 4 git commands to generate.