2001-04-17 Michael Snyder <msnyder@redhat.com>
[deliverable/binutils-gdb.git] / binutils / cxxfilt.man
CommitLineData
0285c67d
NC
1.rn '' }`
2''' $RCSfile$$Revision$$Date$
3'''
4''' $Log$
5''' Revision 1.3 2001/03/25 20:32:25 nickc
6''' Automate generate on man pages
7'''
8'''
9.de Sh
10.br
11.if t .Sp
12.ne 5
13.PP
14\fB\\$1\fR
15.PP
16..
17.de Sp
18.if t .sp .5v
19.if n .sp
20..
21.de Ip
22.br
23.ie \\n(.$>=3 .ne \\$3
24.el .ne 3
25.IP "\\$1" \\$2
26..
27.de Vb
28.ft CW
29.nf
30.ne \\$1
252b5132 31..
0285c67d
NC
32.de Ve
33.ft R
252b5132 34
0285c67d
NC
35.fi
36..
37'''
38'''
39''' Set up \*(-- to give an unbreakable dash;
40''' string Tr holds user defined translation string.
41''' Bell System Logo is used as a dummy character.
42'''
43.tr \(*W-|\(bv\*(Tr
44.ie n \{\
45.ds -- \(*W-
46.ds PI pi
47.if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
48.if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
49.ds L" ""
50.ds R" ""
51''' \*(M", \*(S", \*(N" and \*(T" are the equivalent of
52''' \*(L" and \*(R", except that they are used on ".xx" lines,
53''' such as .IP and .SH, which do another additional levels of
54''' double-quote interpretation
55.ds M" """
56.ds S" """
57.ds N" """""
58.ds T" """""
59.ds L' '
60.ds R' '
61.ds M' '
62.ds S' '
63.ds N' '
64.ds T' '
65'br\}
66.el\{\
67.ds -- \(em\|
68.tr \*(Tr
69.ds L" ``
70.ds R" ''
71.ds M" ``
72.ds S" ''
73.ds N" ``
74.ds T" ''
75.ds L' `
76.ds R' '
77.ds M' `
78.ds S' '
79.ds N' `
80.ds T' '
81.ds PI \(*p
82'br\}
83.\" If the F register is turned on, we'll generate
84.\" index entries out stderr for the following things:
85.\" TH Title
86.\" SH Header
87.\" Sh Subsection
88.\" Ip Item
89.\" X<> Xref (embedded
90.\" Of course, you have to process the output yourself
91.\" in some meaninful fashion.
92.if \nF \{
93.de IX
94.tm Index:\\$1\t\\n%\t"\\$2"
95..
96.nr % 0
97.rr F
98.\}
99.TH CXXFILT.MAN 1 "binutils-2.11.90" "23/Mar/101" "GNU"
100.UC
101.if n .hy 0
102.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
103.de CQ \" put $1 in typewriter font
104.ft CW
105'if n "\c
106'if t \\&\\$1\c
107'if n \\&\\$1\c
108'if n \&"
109\\&\\$2 \\$3 \\$4 \\$5 \\$6 \\$7
110'.ft R
111..
112.\" @(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2
113. \" AM - accent mark definitions
114.bd B 3
115. \" fudge factors for nroff and troff
116.if n \{\
117. ds #H 0
118. ds #V .8m
119. ds #F .3m
120. ds #[ \f1
121. ds #] \fP
122.\}
123.if t \{\
124. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
125. ds #V .6m
126. ds #F 0
127. ds #[ \&
128. ds #] \&
129.\}
130. \" simple accents for nroff and troff
131.if n \{\
132. ds ' \&
133. ds ` \&
134. ds ^ \&
135. ds , \&
136. ds ~ ~
137. ds ? ?
138. ds ! !
139. ds /
140. ds q
141.\}
142.if t \{\
143. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
144. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
145. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
146. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
147. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
148. ds ? \s-2c\h'-\w'c'u*7/10'\u\h'\*(#H'\zi\d\s+2\h'\w'c'u*8/10'
149. ds ! \s-2\(or\s+2\h'-\w'\(or'u'\v'-.8m'.\v'.8m'
150. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
151. ds q o\h'-\w'o'u*8/10'\s-4\v'.4m'\z\(*i\v'-.4m'\s+4\h'\w'o'u*8/10'
152.\}
153. \" troff and (daisy-wheel) nroff accents
154.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
155.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
156.ds v \\k:\h'-(\\n(.wu*9/10-\*(#H)'\v'-\*(#V'\*(#[\s-4v\s0\v'\*(#V'\h'|\\n:u'\*(#]
157.ds _ \\k:\h'-(\\n(.wu*9/10-\*(#H+(\*(#F*2/3))'\v'-.4m'\z\(hy\v'.4m'\h'|\\n:u'
158.ds . \\k:\h'-(\\n(.wu*8/10)'\v'\*(#V*4/10'\z.\v'-\*(#V*4/10'\h'|\\n:u'
159.ds 3 \*(#[\v'.2m'\s-2\&3\s0\v'-.2m'\*(#]
160.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
161.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
162.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
163.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
164.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
165.ds ae a\h'-(\w'a'u*4/10)'e
166.ds Ae A\h'-(\w'A'u*4/10)'E
167.ds oe o\h'-(\w'o'u*4/10)'e
168.ds Oe O\h'-(\w'O'u*4/10)'E
169. \" corrections for vroff
170.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
171.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
172. \" for low resolution devices (crt and lpr)
173.if \n(.H>23 .if \n(.V>19 \
174\{\
175. ds : e
176. ds 8 ss
177. ds v \h'-1'\o'\(aa\(ga'
178. ds _ \h'-1'^
179. ds . \h'-1'.
180. ds 3 3
181. ds o a
182. ds d- d\h'-1'\(ga
183. ds D- D\h'-1'\(hy
184. ds th \o'bp'
185. ds Th \o'LP'
186. ds ae ae
187. ds Ae AE
188. ds oe oe
189. ds Oe OE
190.\}
191.rm #[ #] #H #V #F C
192.SH "NAME"
193cxxfilt \- Demangle \*(C+ and Java symbols.
194.SH "SYNOPSIS"
195c++filt [ \-_ | --strip-underscores ]
196 [ \-j | --java ]
197 [ \-n | --no-strip-underscores ]
198 [ \-s \fIformat\fR | --format=\fIformat\fR ]
199 [ --help ] [ --version ] [ \fIsymbol\fR... ]
200.SH "DESCRIPTION"
201The \*(C+ and Java languages provides function overloading, which means
202that you can write many functions with the same name (providing each
203takes parameters of different types). All \*(C+ and Java function names
204are encoded into a low-level assembly label (this process is known as
205\fImangling\fR). The \f(CWc++filt\fR
206[1]
207program does the inverse mapping: it decodes (\fIdemangles\fR) low-level
208names into user-level names so that the linker can keep these overloaded
209functions from clashing.
252b5132
RH
210.PP
211Every alphanumeric word (consisting of letters, digits, underscores,
212dollars, or periods) seen in the input is a potential label. If the
0285c67d 213label decodes into a \*(C+ name, the \*(C+ name replaces the low-level
252b5132
RH
214name in the output.
215.PP
0285c67d 216You can use \f(CWc++filt\fR to decipher individual symbols:
252b5132 217.PP
0285c67d
NC
218.Vb 2
219\&
220\& c++filt I<symbol>
221.Ve
222If no \fIsymbol\fR arguments are given, \f(CWc++filt\fR reads symbol
223names from the standard input and writes the demangled names to the
224standard output. All results are printed on the standard output.
225.SH "OPTIONS"
226.Ip "\f(CW-_\fR" 4
227.Ip "\f(CW--strip-underscores\fR" 4
228On some systems, both the C and \*(C+ compilers put an underscore in front
229of every name. For example, the C name \f(CWfoo\fR gets the low-level
230name \f(CW_foo\fR. This option removes the initial underscore. Whether
231\f(CWc++filt\fR removes the underscore by default is target dependent.
232.Ip "\f(CW-j\fR" 4
233.Ip "\f(CW--java\fR" 4
234Prints demangled names using Java syntax. The default is to use \*(C+
235syntax.
236.Ip "\f(CW-n\fR" 4
237.Ip "\f(CW--no-strip-underscores\fR" 4
238Do not remove the initial underscore.
239.Ip "\f(CW-s \fIformat\fR\fR" 4
240.Ip "\f(CW--format=\fIformat\fR\fR" 4
241\s-1GNU\s0 \f(CWnm\fR can decode three different methods of mangling, used by
242different \*(C+ compilers. The argument to this option selects which
243method it uses:
244.Ip "\f(CWgnu\fR" 8
245the one used by the \s-1GNU\s0 compiler (the default method)
246.Ip "\f(CWlucid\fR" 8
247the one used by the Lucid compiler
248.Ip "\f(CWarm\fR" 8
249the one specified by the \*(C+ Annotated Reference Manual
250.Ip "\f(CWhp\fR" 8
251the one used by the \s-1HP\s0 compiler
252.Ip "\f(CWedg\fR" 8
253the one used by the \s-1EDG\s0 compiler
254.Ip "\f(CWgnu-new-abi\fR" 8
255the one used by the \s-1GNU\s0 compiler with the new \s-1ABI\s0.
256.Ip "\f(CW--help\fR" 4
257Print a summary of the options to \f(CWc++filt\fR and exit.
258.Ip "\f(CW--version\fR" 4
259Print the version number of \f(CWc++filt\fR and exit.
260.SH "FOOTNOTES"
261.Ip "1." 4
262\s-1MS\s0\-\s-1DOS\s0 does not allow \f(CW+\fR characters in file names, so on
263\s-1MS\s0\-\s-1DOS\s0 this program is named \f(CWcxxfilt\fR.
252b5132 264.SH "SEE ALSO"
0285c67d
NC
265the Info entries for \fIbinutils\fR.
266.SH "COPYRIGHT"
267Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
252b5132 268.PP
0285c67d
NC
269Permission is granted to copy, distribute and/or modify this document
270under the terms of the GNU Free Documentation License, Version 1.1
271or any later version published by the Free Software Foundation;
272with no Invariant Sections, with no Front-Cover Texts, and with no
273Back-Cover Texts. A copy of the license is included in the
274section entitled \*(L"GNU Free Documentation License\*(R".
275
276.rn }` ''
277.IX Title "CXXFILT.MAN 1"
278.IX Name "cxxfilt - Demangle C++ and Java symbols."
279
280.IX Header "NAME"
281
282.IX Header "SYNOPSIS"
283
284.IX Header "DESCRIPTION"
285
286.IX Header "OPTIONS"
287
288.IX Item "\f(CW-_\fR"
289
290.IX Item "\f(CW--strip-underscores\fR"
291
292.IX Item "\f(CW-j\fR"
293
294.IX Item "\f(CW--java\fR"
295
296.IX Item "\f(CW-n\fR"
297
298.IX Item "\f(CW--no-strip-underscores\fR"
299
300.IX Item "\f(CW-s \fIformat\fR\fR"
301
302.IX Item "\f(CW--format=\fIformat\fR\fR"
303
304.IX Item "\f(CWgnu\fR"
305
306.IX Item "\f(CWlucid\fR"
307
308.IX Item "\f(CWarm\fR"
309
310.IX Item "\f(CWhp\fR"
311
312.IX Item "\f(CWedg\fR"
313
314.IX Item "\f(CWgnu-new-abi\fR"
315
316.IX Item "\f(CW--help\fR"
317
318.IX Item "\f(CW--version\fR"
319
320.IX Header "FOOTNOTES"
321
322.IX Item "1."
323
324.IX Header "SEE ALSO"
325
326.IX Header "COPYRIGHT"
327
This page took 0.074355 seconds and 4 git commands to generate.