* config/tc-cris.h (tc_fix_adjustable): Allow only
[binutils-gdb.git] / binutils / cxxfilt.man
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
31 ..
32 .de Ve
33 .ft R
34
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"
193 cxxfilt \- Demangle \*(C+ and Java symbols.
194 .SH "SYNOPSIS"
195 c++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"
201 The \*(C+ and Java languages provides function overloading, which means
202 that you can write many functions with the same name (providing each
203 takes parameters of different types). All \*(C+ and Java function names
204 are encoded into a low-level assembly label (this process is known as
205 \fImangling\fR). The \f(CWc++filt\fR
206 [1]
207 program does the inverse mapping: it decodes (\fIdemangles\fR) low-level
208 names into user-level names so that the linker can keep these overloaded
209 functions from clashing.
210 .PP
211 Every alphanumeric word (consisting of letters, digits, underscores,
212 dollars, or periods) seen in the input is a potential label. If the
213 label decodes into a \*(C+ name, the \*(C+ name replaces the low-level
214 name in the output.
215 .PP
216 You can use \f(CWc++filt\fR to decipher individual symbols:
217 .PP
218 .Vb 2
219 \&
220 \& c++filt I<symbol>
221 .Ve
222 If no \fIsymbol\fR arguments are given, \f(CWc++filt\fR reads symbol
223 names from the standard input and writes the demangled names to the
224 standard 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
228 On some systems, both the C and \*(C+ compilers put an underscore in front
229 of every name. For example, the C name \f(CWfoo\fR gets the low-level
230 name \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
234 Prints demangled names using Java syntax. The default is to use \*(C+
235 syntax.
236 .Ip "\f(CW-n\fR" 4
237 .Ip "\f(CW--no-strip-underscores\fR" 4
238 Do 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
242 different \*(C+ compilers. The argument to this option selects which
243 method it uses:
244 .Ip "\f(CWgnu\fR" 8
245 the one used by the \s-1GNU\s0 compiler (the default method)
246 .Ip "\f(CWlucid\fR" 8
247 the one used by the Lucid compiler
248 .Ip "\f(CWarm\fR" 8
249 the one specified by the \*(C+ Annotated Reference Manual
250 .Ip "\f(CWhp\fR" 8
251 the one used by the \s-1HP\s0 compiler
252 .Ip "\f(CWedg\fR" 8
253 the one used by the \s-1EDG\s0 compiler
254 .Ip "\f(CWgnu-new-abi\fR" 8
255 the one used by the \s-1GNU\s0 compiler with the new \s-1ABI\s0.
256 .Ip "\f(CW--help\fR" 4
257 Print a summary of the options to \f(CWc++filt\fR and exit.
258 .Ip "\f(CW--version\fR" 4
259 Print 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.
264 .SH "SEE ALSO"
265 the Info entries for \fIbinutils\fR.
266 .SH "COPYRIGHT"
267 Copyright (c) 1991, 92, 93, 94, 95, 96, 97, 98, 99, 2000, 2001 Free Software Foundation, Inc.
268 .PP
269 Permission is granted to copy, distribute and/or modify this document
270 under the terms of the GNU Free Documentation License, Version 1.1
271 or any later version published by the Free Software Foundation;
272 with no Invariant Sections, with no Front-Cover Texts, and with no
273 Back-Cover Texts. A copy of the license is included in the
274 section 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