fix merge botch. cpp.1 now describes gcc-3.3.3 instead of gcc-3.3.2
This commit is contained in:
parent
d8a2c2edb9
commit
3a92b5a162
|
@ -1,7 +1,8 @@
|
|||
.\" Automatically generated by Pod::Man v1.34, Pod::Parser v1.13
|
||||
.\" Automatically generated by Pod::Man version 1.15
|
||||
.\" Sat Feb 14 20:38:10 2004
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.\" ======================================================================
|
||||
.de Sh \" Subsection heading
|
||||
.br
|
||||
.if t .Sp
|
||||
|
@ -14,6 +15,12 @@
|
|||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Ip \" List item
|
||||
.br
|
||||
.ie \\n(.$>=3 .ne \\$3
|
||||
.el .ne 3
|
||||
.IP "\\$1" \\$2
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
|
@ -21,14 +28,15 @@
|
|||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. | will give a
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used to
|
||||
.\" do unbreakable dashes and therefore won't be available. \*(C` and \*(C'
|
||||
.\" expand to `' in nroff, nothing in troff, for use with C<>.
|
||||
.\" real vertical bar. \*(C+ will give a nicer C++. Capital omega is used
|
||||
.\" to do unbreakable dashes and therefore won't be available. \*(C` and
|
||||
.\" \*(C' expand to `' in nroff, nothing in troff, for use with C<>
|
||||
.tr \(*W-|\(bv\*(Tr
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
|
@ -48,10 +56,10 @@
|
|||
. ds R" ''
|
||||
'br\}
|
||||
.\"
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.\" If the F register is turned on, we'll generate index entries on stderr
|
||||
.\" for titles (.TH), headers (.SH), subsections (.Sh), items (.Ip), and
|
||||
.\" index entries marked with X<> in POD. Of course, you'll have to process
|
||||
.\" the output yourself in some meaningful fashion.
|
||||
.if \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
|
@ -60,13 +68,14 @@
|
|||
. rr F
|
||||
.\}
|
||||
.\"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it
|
||||
.\" makes way too many mistakes in technical documents.
|
||||
.hy 0
|
||||
.if n .na
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
.bd B 3
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
|
@ -126,10 +135,11 @@
|
|||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\" ======================================================================
|
||||
.\"
|
||||
.IX Title "CPP 1"
|
||||
.TH CPP 1 "2003-10-16" "gcc-3.3.2" "GNU"
|
||||
.TH CPP 1 "gcc-3.3.3" "2004-02-14" "GNU"
|
||||
.UC
|
||||
.SH "NAME"
|
||||
cpp \- The C Preprocessor
|
||||
.SH "SYNOPSIS"
|
||||
|
@ -156,12 +166,12 @@ text processor. It will choke on input which does not obey C's lexical
|
|||
rules. For example, apostrophes will be interpreted as the beginning of
|
||||
character constants, and cause errors. Also, you cannot rely on it
|
||||
preserving characteristics of the input which are not significant to
|
||||
C\-family languages. If a Makefile is preprocessed, all the hard tabs
|
||||
C-family languages. If a Makefile is preprocessed, all the hard tabs
|
||||
will be removed, and the Makefile will not work.
|
||||
.PP
|
||||
Having said that, you can often get away with using cpp on things which
|
||||
are not C. Other Algol-ish programming languages are often safe
|
||||
(Pascal, Ada, etc.) So is assembly, with caution. \fB\-traditional\-cpp\fR
|
||||
(Pascal, Ada, etc.) So is assembly, with caution. \fB\-traditional-cpp\fR
|
||||
mode preserves more white space, and is otherwise more permissive. Many
|
||||
of the problems can be avoided by writing C or \*(C+ style comments
|
||||
instead of native language comments, and keeping macros simple.
|
||||
|
@ -198,10 +208,10 @@ The C preprocessor expects two file names as arguments, \fIinfile\fR and
|
|||
other files it specifies with \fB#include\fR. All the output generated
|
||||
by the combined input files is written in \fIoutfile\fR.
|
||||
.PP
|
||||
Either \fIinfile\fR or \fIoutfile\fR may be \fB\-\fR, which as
|
||||
Either \fIinfile\fR or \fIoutfile\fR may be \fB-\fR, which as
|
||||
\&\fIinfile\fR means to read from standard input and as \fIoutfile\fR
|
||||
means to write to standard output. Also, if either file is omitted, it
|
||||
means the same as if \fB\-\fR had been specified for that file.
|
||||
means the same as if \fB-\fR had been specified for that file.
|
||||
.PP
|
||||
Unless otherwise noted, or the option ends in \fB=\fR, all options
|
||||
which take an argument may have that argument appear either immediately
|
||||
|
@ -211,10 +221,10 @@ after the option, or with a space between option and argument:
|
|||
Many options have multi-letter names; therefore multiple single-letter
|
||||
options may \fInot\fR be grouped: \fB\-dM\fR is very different from
|
||||
\&\fB\-d\ \-M\fR.
|
||||
.IP "\fB\-D\fR \fIname\fR" 4
|
||||
.Ip "\fB\-D\fR \fIname\fR" 4
|
||||
.IX Item "-D name"
|
||||
Predefine \fIname\fR as a macro, with definition \f(CW1\fR.
|
||||
.IP "\fB\-D\fR \fIname\fR\fB=\fR\fIdefinition\fR" 4
|
||||
Predefine \fIname\fR as a macro, with definition \f(CW\*(C`1\*(C'\fR.
|
||||
.Ip "\fB\-D\fR \fIname\fR\fB=\fR\fIdefinition\fR" 4
|
||||
.IX Item "-D name=definition"
|
||||
Predefine \fIname\fR as a macro, with definition \fIdefinition\fR.
|
||||
There are no restrictions on the contents of \fIdefinition\fR, but if
|
||||
|
@ -232,15 +242,15 @@ to quote the option. With \fBsh\fR and \fBcsh\fR,
|
|||
are given on the command line. All \fB\-imacros\fR \fIfile\fR and
|
||||
\&\fB\-include\fR \fIfile\fR options are processed after all
|
||||
\&\fB\-D\fR and \fB\-U\fR options.
|
||||
.IP "\fB\-U\fR \fIname\fR" 4
|
||||
.Ip "\fB\-U\fR \fIname\fR" 4
|
||||
.IX Item "-U name"
|
||||
Cancel any previous definition of \fIname\fR, either built in or
|
||||
provided with a \fB\-D\fR option.
|
||||
.IP "\fB\-undef\fR" 4
|
||||
.Ip "\fB\-undef\fR" 4
|
||||
.IX Item "-undef"
|
||||
Do not predefine any system-specific or GCC-specific macros. The
|
||||
standard predefined macros remain defined.
|
||||
.IP "\fB\-I\fR \fIdir\fR" 4
|
||||
.Ip "\fB\-I\fR \fIdir\fR" 4
|
||||
.IX Item "-I dir"
|
||||
Add the directory \fIdir\fR to the list of directories to be searched
|
||||
for header files.
|
||||
|
@ -251,47 +261,47 @@ system include directory, the option is ignored to ensure that the
|
|||
default search order for system directories and the special treatment
|
||||
of system headers are not defeated
|
||||
\&.
|
||||
.IP "\fB\-o\fR \fIfile\fR" 4
|
||||
.Ip "\fB\-o\fR \fIfile\fR" 4
|
||||
.IX Item "-o file"
|
||||
Write output to \fIfile\fR. This is the same as specifying \fIfile\fR
|
||||
as the second non-option argument to \fBcpp\fR. \fBgcc\fR has a
|
||||
different interpretation of a second non-option argument, so you must
|
||||
use \fB\-o\fR to specify the output file.
|
||||
.IP "\fB\-Wall\fR" 4
|
||||
.Ip "\fB\-Wall\fR" 4
|
||||
.IX Item "-Wall"
|
||||
Turns on all optional warnings which are desirable for normal code. At
|
||||
present this is \fB\-Wcomment\fR and \fB\-Wtrigraphs\fR. Note that
|
||||
many of the preprocessor's warnings are on by default and have no
|
||||
options to control them.
|
||||
.IP "\fB\-Wcomment\fR" 4
|
||||
.Ip "\fB\-Wcomment\fR" 4
|
||||
.IX Item "-Wcomment"
|
||||
.PD 0
|
||||
.IP "\fB\-Wcomments\fR" 4
|
||||
.Ip "\fB\-Wcomments\fR" 4
|
||||
.IX Item "-Wcomments"
|
||||
.PD
|
||||
Warn whenever a comment-start sequence \fB/*\fR appears in a \fB/*\fR
|
||||
comment, or whenever a backslash-newline appears in a \fB//\fR comment.
|
||||
(Both forms have the same effect.)
|
||||
.IP "\fB\-Wtrigraphs\fR" 4
|
||||
.Ip "\fB\-Wtrigraphs\fR" 4
|
||||
.IX Item "-Wtrigraphs"
|
||||
Warn if any trigraphs are encountered. This option used to take effect
|
||||
only if \fB\-trigraphs\fR was also specified, but now works
|
||||
independently. Warnings are not given for trigraphs within comments, as
|
||||
they do not affect the meaning of the program.
|
||||
.IP "\fB\-Wtraditional\fR" 4
|
||||
.Ip "\fB\-Wtraditional\fR" 4
|
||||
.IX Item "-Wtraditional"
|
||||
Warn about certain constructs that behave differently in traditional and
|
||||
\&\s-1ISO\s0 C. Also warn about \s-1ISO\s0 C constructs that have no traditional C
|
||||
equivalent, and problematic constructs which should be avoided.
|
||||
.IP "\fB\-Wimport\fR" 4
|
||||
.Ip "\fB\-Wimport\fR" 4
|
||||
.IX Item "-Wimport"
|
||||
Warn the first time \fB#import\fR is used.
|
||||
.IP "\fB\-Wundef\fR" 4
|
||||
.Ip "\fB\-Wundef\fR" 4
|
||||
.IX Item "-Wundef"
|
||||
Warn whenever an identifier which is not a macro is encountered in an
|
||||
\&\fB#if\fR directive, outside of \fBdefined\fR. Such identifiers are
|
||||
replaced with zero.
|
||||
.IP "\fB\-Wunused\-macros\fR" 4
|
||||
.Ip "\fB\-Wunused-macros\fR" 4
|
||||
.IX Item "-Wunused-macros"
|
||||
Warn about macros defined in the main file that are unused. A macro
|
||||
is \fIused\fR if it is expanded or tested for existence at least once.
|
||||
|
@ -311,7 +321,7 @@ Alternatively, you could provide a dummy use with something like:
|
|||
\& #if defined the_macro_causing_the_warning
|
||||
\& #endif
|
||||
.Ve
|
||||
.IP "\fB\-Wendif\-labels\fR" 4
|
||||
.Ip "\fB\-Wendif-labels\fR" 4
|
||||
.IX Item "-Wendif-labels"
|
||||
Warn whenever an \fB#else\fR or an \fB#endif\fR are followed by text.
|
||||
This usually happens in code of the form
|
||||
|
@ -323,32 +333,31 @@ This usually happens in code of the form
|
|||
\& ...
|
||||
\& #endif FOO
|
||||
.Ve
|
||||
.Sp
|
||||
The second and third \f(CW\*(C`FOO\*(C'\fR should be in comments, but often are not
|
||||
in older programs. This warning is on by default.
|
||||
.IP "\fB\-Werror\fR" 4
|
||||
.Ip "\fB\-Werror\fR" 4
|
||||
.IX Item "-Werror"
|
||||
Make all warnings into hard errors. Source code which triggers warnings
|
||||
will be rejected.
|
||||
.IP "\fB\-Wsystem\-headers\fR" 4
|
||||
.Ip "\fB\-Wsystem-headers\fR" 4
|
||||
.IX Item "-Wsystem-headers"
|
||||
Issue warnings for code in system headers. These are normally unhelpful
|
||||
in finding bugs in your own code, therefore suppressed. If you are
|
||||
responsible for the system library, you may want to see them.
|
||||
.IP "\fB\-w\fR" 4
|
||||
.Ip "\fB\-w\fR" 4
|
||||
.IX Item "-w"
|
||||
Suppress all warnings, including those which \s-1GNU\s0 \s-1CPP\s0 issues by default.
|
||||
.IP "\fB\-pedantic\fR" 4
|
||||
.Ip "\fB\-pedantic\fR" 4
|
||||
.IX Item "-pedantic"
|
||||
Issue all the mandatory diagnostics listed in the C standard. Some of
|
||||
them are left out by default, since they trigger frequently on harmless
|
||||
code.
|
||||
.IP "\fB\-pedantic\-errors\fR" 4
|
||||
.Ip "\fB\-pedantic-errors\fR" 4
|
||||
.IX Item "-pedantic-errors"
|
||||
Issue all the mandatory diagnostics, and make all mandatory diagnostics
|
||||
into errors. This includes mandatory diagnostics that \s-1GCC\s0 issues
|
||||
without \fB\-pedantic\fR but treats as warnings.
|
||||
.IP "\fB\-M\fR" 4
|
||||
.Ip "\fB\-M\fR" 4
|
||||
.IX Item "-M"
|
||||
Instead of outputting the result of preprocessing, output a rule
|
||||
suitable for \fBmake\fR describing the dependencies of the main
|
||||
|
@ -372,7 +381,7 @@ will still be sent to the regular output stream as normal.
|
|||
.Sp
|
||||
Passing \fB\-M\fR to the driver implies \fB\-E\fR, and suppresses
|
||||
warnings with an implicit \fB\-w\fR.
|
||||
.IP "\fB\-MM\fR" 4
|
||||
.Ip "\fB\-MM\fR" 4
|
||||
.IX Item "-MM"
|
||||
Like \fB\-M\fR but do not mention header files that are found in
|
||||
system header directories, nor header files that are included,
|
||||
|
@ -382,7 +391,7 @@ This implies that the choice of angle brackets or double quotes in an
|
|||
\&\fB#include\fR directive does not in itself determine whether that
|
||||
header will appear in \fB\-MM\fR dependency output. This is a
|
||||
slight change in semantics from \s-1GCC\s0 versions 3.0 and earlier.
|
||||
.IP "\fB\-MF\fR \fIfile\fR" 4
|
||||
.Ip "\fB\-MF\fR \fIfile\fR" 4
|
||||
.IX Item "-MF file"
|
||||
@anchor{\-MF}
|
||||
When used with \fB\-M\fR or \fB\-MM\fR, specifies a
|
||||
|
@ -392,7 +401,7 @@ preprocessed output.
|
|||
.Sp
|
||||
When used with the driver options \fB\-MD\fR or \fB\-MMD\fR,
|
||||
\&\fB\-MF\fR overrides the default dependency output file.
|
||||
.IP "\fB\-MG\fR" 4
|
||||
.Ip "\fB\-MG\fR" 4
|
||||
.IX Item "-MG"
|
||||
In conjunction with an option such as \fB\-M\fR requesting
|
||||
dependency generation, \fB\-MG\fR assumes missing header files are
|
||||
|
@ -403,7 +412,7 @@ also suppresses preprocessed output, as a missing header file renders
|
|||
this useless.
|
||||
.Sp
|
||||
This feature is used in automatic updating of makefiles.
|
||||
.IP "\fB\-MP\fR" 4
|
||||
.Ip "\fB\-MP\fR" 4
|
||||
.IX Item "-MP"
|
||||
This option instructs \s-1CPP\s0 to add a phony target for each dependency
|
||||
other than the main file, causing each to depend on nothing. These
|
||||
|
@ -415,11 +424,10 @@ This is typical output:
|
|||
.Vb 1
|
||||
\& test.o: test.c test.h
|
||||
.Ve
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& test.h:
|
||||
.Ve
|
||||
.IP "\fB\-MT\fR \fItarget\fR" 4
|
||||
.Ip "\fB\-MT\fR \fItarget\fR" 4
|
||||
.IX Item "-MT target"
|
||||
Change the target of the rule emitted by dependency generation. By
|
||||
default \s-1CPP\s0 takes the name of the main input file, including any path,
|
||||
|
@ -435,7 +443,7 @@ For example, \fB\-MT\ '$(objpfx)foo.o'\fR might give
|
|||
.Vb 1
|
||||
\& $(objpfx)foo.o: foo.c
|
||||
.Ve
|
||||
.IP "\fB\-MQ\fR \fItarget\fR" 4
|
||||
.Ip "\fB\-MQ\fR \fItarget\fR" 4
|
||||
.IX Item "-MQ target"
|
||||
Same as \fB\-MT\fR, but it quotes any characters which are special to
|
||||
Make. \fB\-MQ\ '$(objpfx)foo.o'\fR gives
|
||||
|
@ -443,10 +451,9 @@ Make. \fB\-MQ\ '$(objpfx)foo.o'\fR gives
|
|||
.Vb 1
|
||||
\& $$(objpfx)foo.o: foo.c
|
||||
.Ve
|
||||
.Sp
|
||||
The default target is automatically quoted, as if it were given with
|
||||
\&\fB\-MQ\fR.
|
||||
.IP "\fB\-MD\fR" 4
|
||||
.Ip "\fB\-MD\fR" 4
|
||||
.IX Item "-MD"
|
||||
\&\fB\-MD\fR is equivalent to \fB\-M \-MF\fR \fIfile\fR, except that
|
||||
\&\fB\-E\fR is not implied. The driver determines \fIfile\fR based on
|
||||
|
@ -461,21 +468,21 @@ is understood to specify a target object file.
|
|||
.Sp
|
||||
Since \fB\-E\fR is not implied, \fB\-MD\fR can be used to generate
|
||||
a dependency output file as a side-effect of the compilation process.
|
||||
.IP "\fB\-MMD\fR" 4
|
||||
.Ip "\fB\-MMD\fR" 4
|
||||
.IX Item "-MMD"
|
||||
Like \fB\-MD\fR except mention only user header files, not system
|
||||
\&\-header files.
|
||||
.IP "\fB\-x c\fR" 4
|
||||
.Ip "\fB\-x c\fR" 4
|
||||
.IX Item "-x c"
|
||||
.PD 0
|
||||
.IP "\fB\-x c++\fR" 4
|
||||
.Ip "\fB\-x c++\fR" 4
|
||||
.IX Item "-x c++"
|
||||
.IP "\fB\-x objective-c\fR" 4
|
||||
.Ip "\fB\-x objective-c\fR" 4
|
||||
.IX Item "-x objective-c"
|
||||
.IP "\fB\-x assembler-with-cpp\fR" 4
|
||||
.Ip "\fB\-x assembler-with-cpp\fR" 4
|
||||
.IX Item "-x assembler-with-cpp"
|
||||
.PD
|
||||
Specify the source language: C, \*(C+, Objective\-C, or assembly. This has
|
||||
Specify the source language: C, \*(C+, Objective-C, or assembly. This has
|
||||
nothing to do with standards conformance or extensions; it merely
|
||||
selects which base syntax to expect. If you give none of these options,
|
||||
cpp will deduce the language from the extension of the source file:
|
||||
|
@ -488,10 +495,10 @@ generic mode.
|
|||
which selected both the language and the standards conformance level.
|
||||
This option has been removed, because it conflicts with the \fB\-l\fR
|
||||
option.
|
||||
.IP "\fB\-std=\fR\fIstandard\fR" 4
|
||||
.Ip "\fB\-std=\fR\fIstandard\fR" 4
|
||||
.IX Item "-std=standard"
|
||||
.PD 0
|
||||
.IP "\fB\-ansi\fR" 4
|
||||
.Ip "\fB\-ansi\fR" 4
|
||||
.IX Item "-ansi"
|
||||
.PD
|
||||
Specify the standard to which the code should conform. Currently \s-1CPP\s0
|
||||
|
@ -500,85 +507,85 @@ knows about C and \*(C+ standards; others may be added in the future.
|
|||
\&\fIstandard\fR
|
||||
may be one of:
|
||||
.RS 4
|
||||
.ie n .IP """iso9899:1990""" 4
|
||||
.el .IP "\f(CWiso9899:1990\fR" 4
|
||||
.if n .Ip "\f(CW""""iso9899:1990""""\fR" 4
|
||||
.el .Ip "\f(CWiso9899:1990\fR" 4
|
||||
.IX Item "iso9899:1990"
|
||||
.PD 0
|
||||
.ie n .IP """c89""" 4
|
||||
.el .IP "\f(CWc89\fR" 4
|
||||
.if n .Ip "\f(CW""""c89""""\fR" 4
|
||||
.el .Ip "\f(CWc89\fR" 4
|
||||
.IX Item "c89"
|
||||
.PD
|
||||
The \s-1ISO\s0 C standard from 1990. \fBc89\fR is the customary shorthand for
|
||||
this version of the standard.
|
||||
.Sp
|
||||
The \fB\-ansi\fR option is equivalent to \fB\-std=c89\fR.
|
||||
.ie n .IP """iso9899:199409""" 4
|
||||
.el .IP "\f(CWiso9899:199409\fR" 4
|
||||
.if n .Ip "\f(CW""""iso9899:199409""""\fR" 4
|
||||
.el .Ip "\f(CWiso9899:199409\fR" 4
|
||||
.IX Item "iso9899:199409"
|
||||
The 1990 C standard, as amended in 1994.
|
||||
.ie n .IP """iso9899:1999""" 4
|
||||
.el .IP "\f(CWiso9899:1999\fR" 4
|
||||
.if n .Ip "\f(CW""""iso9899:1999""""\fR" 4
|
||||
.el .Ip "\f(CWiso9899:1999\fR" 4
|
||||
.IX Item "iso9899:1999"
|
||||
.PD 0
|
||||
.ie n .IP """c99""" 4
|
||||
.el .IP "\f(CWc99\fR" 4
|
||||
.if n .Ip "\f(CW""""c99""""\fR" 4
|
||||
.el .Ip "\f(CWc99\fR" 4
|
||||
.IX Item "c99"
|
||||
.ie n .IP """iso9899:199x""" 4
|
||||
.el .IP "\f(CWiso9899:199x\fR" 4
|
||||
.if n .Ip "\f(CW""""iso9899:199x""""\fR" 4
|
||||
.el .Ip "\f(CWiso9899:199x\fR" 4
|
||||
.IX Item "iso9899:199x"
|
||||
.ie n .IP """c9x""" 4
|
||||
.el .IP "\f(CWc9x\fR" 4
|
||||
.if n .Ip "\f(CW""""c9x""""\fR" 4
|
||||
.el .Ip "\f(CWc9x\fR" 4
|
||||
.IX Item "c9x"
|
||||
.PD
|
||||
The revised \s-1ISO\s0 C standard, published in December 1999. Before
|
||||
publication, this was known as C9X.
|
||||
.ie n .IP """gnu89""" 4
|
||||
.el .IP "\f(CWgnu89\fR" 4
|
||||
.if n .Ip "\f(CW""""gnu89""""\fR" 4
|
||||
.el .Ip "\f(CWgnu89\fR" 4
|
||||
.IX Item "gnu89"
|
||||
The 1990 C standard plus \s-1GNU\s0 extensions. This is the default.
|
||||
.ie n .IP """gnu99""" 4
|
||||
.el .IP "\f(CWgnu99\fR" 4
|
||||
.if n .Ip "\f(CW""""gnu99""""\fR" 4
|
||||
.el .Ip "\f(CWgnu99\fR" 4
|
||||
.IX Item "gnu99"
|
||||
.PD 0
|
||||
.ie n .IP """gnu9x""" 4
|
||||
.el .IP "\f(CWgnu9x\fR" 4
|
||||
.if n .Ip "\f(CW""""gnu9x""""\fR" 4
|
||||
.el .Ip "\f(CWgnu9x\fR" 4
|
||||
.IX Item "gnu9x"
|
||||
.PD
|
||||
The 1999 C standard plus \s-1GNU\s0 extensions.
|
||||
.ie n .IP """c++98""" 4
|
||||
.el .IP "\f(CWc++98\fR" 4
|
||||
.if n .Ip "\f(CW""""c++98""""\fR" 4
|
||||
.el .Ip "\f(CWc++98\fR" 4
|
||||
.IX Item "c++98"
|
||||
The 1998 \s-1ISO\s0 \*(C+ standard plus amendments.
|
||||
.ie n .IP """gnu++98""" 4
|
||||
.el .IP "\f(CWgnu++98\fR" 4
|
||||
.if n .Ip "\f(CW""""gnu++98""""\fR" 4
|
||||
.el .Ip "\f(CWgnu++98\fR" 4
|
||||
.IX Item "gnu++98"
|
||||
The same as \fB\-std=c++98\fR plus \s-1GNU\s0 extensions. This is the
|
||||
default for \*(C+ code.
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.IP "\fB\-I\-\fR" 4
|
||||
.Ip "\fB\-I-\fR" 4
|
||||
.IX Item "-I-"
|
||||
Split the include path. Any directories specified with \fB\-I\fR
|
||||
options before \fB\-I\-\fR are searched only for headers requested with
|
||||
options before \fB\-I-\fR are searched only for headers requested with
|
||||
\&\f(CW\*(C`#include\ "\f(CIfile\f(CW"\*(C'\fR; they are not searched for
|
||||
\&\f(CW\*(C`#include\ <\f(CIfile\f(CW>\*(C'\fR. If additional directories are
|
||||
specified with \fB\-I\fR options after the \fB\-I\-\fR, those
|
||||
specified with \fB\-I\fR options after the \fB\-I-\fR, those
|
||||
directories are searched for all \fB#include\fR directives.
|
||||
.Sp
|
||||
In addition, \fB\-I\-\fR inhibits the use of the directory of the current
|
||||
In addition, \fB\-I-\fR inhibits the use of the directory of the current
|
||||
file directory as the first search directory for \f(CW\*(C`#include\ "\f(CIfile\f(CW"\*(C'\fR.
|
||||
.IP "\fB\-nostdinc\fR" 4
|
||||
.Ip "\fB\-nostdinc\fR" 4
|
||||
.IX Item "-nostdinc"
|
||||
Do not search the standard system directories for header files.
|
||||
Only the directories you have specified with \fB\-I\fR options
|
||||
(and the directory of the current file, if appropriate) are searched.
|
||||
.IP "\fB\-nostdinc++\fR" 4
|
||||
.Ip "\fB\-nostdinc++\fR" 4
|
||||
.IX Item "-nostdinc++"
|
||||
Do not search for header files in the \*(C+\-specific standard directories,
|
||||
but do still search the other standard directories. (This option is
|
||||
used when building the \*(C+ library.)
|
||||
.IP "\fB\-include\fR \fIfile\fR" 4
|
||||
.Ip "\fB\-include\fR \fIfile\fR" 4
|
||||
.IX Item "-include file"
|
||||
Process \fIfile\fR as if \f(CW\*(C`#include "file"\*(C'\fR appeared as the first
|
||||
line of the primary source file. However, the first directory searched
|
||||
|
@ -589,7 +596,7 @@ chain as normal.
|
|||
.Sp
|
||||
If multiple \fB\-include\fR options are given, the files are included
|
||||
in the order they appear on the command line.
|
||||
.IP "\fB\-imacros\fR \fIfile\fR" 4
|
||||
.Ip "\fB\-imacros\fR \fIfile\fR" 4
|
||||
.IX Item "-imacros file"
|
||||
Exactly like \fB\-include\fR, except that any output produced by
|
||||
scanning \fIfile\fR is thrown away. Macros it defines remain defined.
|
||||
|
@ -598,20 +605,20 @@ processing its declarations.
|
|||
.Sp
|
||||
All files specified by \fB\-imacros\fR are processed before all files
|
||||
specified by \fB\-include\fR.
|
||||
.IP "\fB\-idirafter\fR \fIdir\fR" 4
|
||||
.Ip "\fB\-idirafter\fR \fIdir\fR" 4
|
||||
.IX Item "-idirafter dir"
|
||||
Search \fIdir\fR for header files, but do it \fIafter\fR all
|
||||
directories specified with \fB\-I\fR and the standard system directories
|
||||
have been exhausted. \fIdir\fR is treated as a system include directory.
|
||||
.IP "\fB\-iprefix\fR \fIprefix\fR" 4
|
||||
.Ip "\fB\-iprefix\fR \fIprefix\fR" 4
|
||||
.IX Item "-iprefix prefix"
|
||||
Specify \fIprefix\fR as the prefix for subsequent \fB\-iwithprefix\fR
|
||||
options. If the prefix represents a directory, you should include the
|
||||
final \fB/\fR.
|
||||
.IP "\fB\-iwithprefix\fR \fIdir\fR" 4
|
||||
.Ip "\fB\-iwithprefix\fR \fIdir\fR" 4
|
||||
.IX Item "-iwithprefix dir"
|
||||
.PD 0
|
||||
.IP "\fB\-iwithprefixbefore\fR \fIdir\fR" 4
|
||||
.Ip "\fB\-iwithprefixbefore\fR \fIdir\fR" 4
|
||||
.IX Item "-iwithprefixbefore dir"
|
||||
.PD
|
||||
Append \fIdir\fR to the prefix specified previously with
|
||||
|
@ -620,13 +627,13 @@ path. \fB\-iwithprefixbefore\fR puts it in the same place \fB\-I\fR
|
|||
would; \fB\-iwithprefix\fR puts it where \fB\-idirafter\fR would.
|
||||
.Sp
|
||||
Use of these options is discouraged.
|
||||
.IP "\fB\-isystem\fR \fIdir\fR" 4
|
||||
.Ip "\fB\-isystem\fR \fIdir\fR" 4
|
||||
.IX Item "-isystem dir"
|
||||
Search \fIdir\fR for header files, after all directories specified by
|
||||
\&\fB\-I\fR but before the standard system directories. Mark it
|
||||
as a system directory, so that it gets the same special treatment as
|
||||
is applied to the standard system directories.
|
||||
.IP "\fB\-fpreprocessed\fR" 4
|
||||
.Ip "\fB\-fpreprocessed\fR" 4
|
||||
.IX Item "-fpreprocessed"
|
||||
Indicate to the preprocessor that the input file has already been
|
||||
preprocessed. This suppresses things like macro expansion, trigraph
|
||||
|
@ -639,29 +646,29 @@ a tokenizer for the front ends.
|
|||
\&\fB\-fpreprocessed\fR is implicit if the input file has one of the
|
||||
extensions \fB.i\fR, \fB.ii\fR or \fB.mi\fR. These are the
|
||||
extensions that \s-1GCC\s0 uses for preprocessed files created by
|
||||
\&\fB\-save\-temps\fR.
|
||||
.IP "\fB\-ftabstop=\fR\fIwidth\fR" 4
|
||||
\&\fB\-save-temps\fR.
|
||||
.Ip "\fB\-ftabstop=\fR\fIwidth\fR" 4
|
||||
.IX Item "-ftabstop=width"
|
||||
Set the distance between tab stops. This helps the preprocessor report
|
||||
correct column numbers in warnings or errors, even if tabs appear on the
|
||||
line. If the value is less than 1 or greater than 100, the option is
|
||||
ignored. The default is 8.
|
||||
.IP "\fB\-fno\-show\-column\fR" 4
|
||||
.Ip "\fB\-fno-show-column\fR" 4
|
||||
.IX Item "-fno-show-column"
|
||||
Do not print column numbers in diagnostics. This may be necessary if
|
||||
diagnostics are being scanned by a program that does not understand the
|
||||
column numbers, such as \fBdejagnu\fR.
|
||||
.IP "\fB\-A\fR \fIpredicate\fR\fB=\fR\fIanswer\fR" 4
|
||||
.Ip "\fB\-A\fR \fIpredicate\fR\fB=\fR\fIanswer\fR" 4
|
||||
.IX Item "-A predicate=answer"
|
||||
Make an assertion with the predicate \fIpredicate\fR and answer
|
||||
\&\fIanswer\fR. This form is preferred to the older form \fB\-A\fR
|
||||
\&\fIpredicate\fR\fB(\fR\fIanswer\fR\fB)\fR, which is still supported, because
|
||||
it does not use shell special characters.
|
||||
.IP "\fB\-A \-\fR\fIpredicate\fR\fB=\fR\fIanswer\fR" 4
|
||||
.Ip "\fB\-A -\fR\fIpredicate\fR\fB=\fR\fIanswer\fR" 4
|
||||
.IX Item "-A -predicate=answer"
|
||||
Cancel an assertion with the predicate \fIpredicate\fR and answer
|
||||
\&\fIanswer\fR.
|
||||
.IP "\fB\-dCHARS\fR" 4
|
||||
.Ip "\fB\-dCHARS\fR" 4
|
||||
.IX Item "-dCHARS"
|
||||
\&\fI\s-1CHARS\s0\fR is a sequence of one or more of the following characters,
|
||||
and must not be preceded by a space. Other characters are interpreted
|
||||
|
@ -669,7 +676,7 @@ by the compiler proper, or reserved for future versions of \s-1GCC\s0, and so
|
|||
are silently ignored. If you specify characters whose behavior
|
||||
conflicts, the result is undefined.
|
||||
.RS 4
|
||||
.IP "\fBM\fR" 4
|
||||
.Ip "\fBM\fR" 4
|
||||
.IX Item "M"
|
||||
Instead of the normal output, generate a list of \fB#define\fR
|
||||
directives for all the macros defined during the execution of the
|
||||
|
@ -680,31 +687,30 @@ Assuming you have no file \fIfoo.h\fR, the command
|
|||
.Vb 1
|
||||
\& touch foo.h; cpp -dM foo.h
|
||||
.Ve
|
||||
.Sp
|
||||
will show all the predefined macros.
|
||||
.IP "\fBD\fR" 4
|
||||
.Ip "\fBD\fR" 4
|
||||
.IX Item "D"
|
||||
Like \fBM\fR except in two respects: it does \fInot\fR include the
|
||||
predefined macros, and it outputs \fIboth\fR the \fB#define\fR
|
||||
directives and the result of preprocessing. Both kinds of output go to
|
||||
the standard output file.
|
||||
.IP "\fBN\fR" 4
|
||||
.Ip "\fBN\fR" 4
|
||||
.IX Item "N"
|
||||
Like \fBD\fR, but emit only the macro names, not their expansions.
|
||||
.IP "\fBI\fR" 4
|
||||
.Ip "\fBI\fR" 4
|
||||
.IX Item "I"
|
||||
Output \fB#include\fR directives in addition to the result of
|
||||
preprocessing.
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.IP "\fB\-P\fR" 4
|
||||
.Ip "\fB\-P\fR" 4
|
||||
.IX Item "-P"
|
||||
Inhibit generation of linemarkers in the output from the preprocessor.
|
||||
This might be useful when running the preprocessor on something that is
|
||||
not C code, and will be sent to a program which might be confused by the
|
||||
linemarkers.
|
||||
.IP "\fB\-C\fR" 4
|
||||
.Ip "\fB\-C\fR" 4
|
||||
.IX Item "-C"
|
||||
Do not discard comments. All comments are passed through to the output
|
||||
file, except for comments in processed directives, which are deleted
|
||||
|
@ -715,7 +721,7 @@ causes the preprocessor to treat comments as tokens in their own right.
|
|||
For example, comments appearing at the start of what would be a
|
||||
directive line have the effect of turning that line into an ordinary
|
||||
source line, since the first token on the line is no longer a \fB#\fR.
|
||||
.IP "\fB\-CC\fR" 4
|
||||
.Ip "\fB\-CC\fR" 4
|
||||
.IX Item "-CC"
|
||||
Do not discard comments, including during macro expansion. This is
|
||||
like \fB\-C\fR, except that comments contained within macros are
|
||||
|
@ -723,44 +729,44 @@ also passed through to the output file where the macro is expanded.
|
|||
.Sp
|
||||
In addition to the side-effects of the \fB\-C\fR option, the
|
||||
\&\fB\-CC\fR option causes all \*(C+\-style comments inside a macro
|
||||
to be converted to C\-style comments. This is to prevent later use
|
||||
to be converted to C-style comments. This is to prevent later use
|
||||
of that macro from inadvertently commenting out the remainder of
|
||||
the source line.
|
||||
.Sp
|
||||
The \fB\-CC\fR option is generally used to support lint comments.
|
||||
.IP "\fB\-traditional\-cpp\fR" 4
|
||||
.Ip "\fB\-traditional-cpp\fR" 4
|
||||
.IX Item "-traditional-cpp"
|
||||
Try to imitate the behavior of old-fashioned C preprocessors, as
|
||||
opposed to \s-1ISO\s0 C preprocessors.
|
||||
.IP "\fB\-trigraphs\fR" 4
|
||||
.Ip "\fB\-trigraphs\fR" 4
|
||||
.IX Item "-trigraphs"
|
||||
Process trigraph sequences.
|
||||
.IP "\fB\-remap\fR" 4
|
||||
.Ip "\fB\-remap\fR" 4
|
||||
.IX Item "-remap"
|
||||
Enable special code to work around file systems which only permit very
|
||||
short file names, such as \s-1MS\-DOS\s0.
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
short file names, such as \s-1MS-DOS\s0.
|
||||
.Ip "\fB\*(--help\fR" 4
|
||||
.IX Item "help"
|
||||
.PD 0
|
||||
.IP "\fB\-\-target\-help\fR" 4
|
||||
.IX Item "--target-help"
|
||||
.Ip "\fB\*(--target-help\fR" 4
|
||||
.IX Item "target-help"
|
||||
.PD
|
||||
Print text describing all the command line options instead of
|
||||
preprocessing anything.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.Ip "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
Verbose mode. Print out \s-1GNU\s0 \s-1CPP\s0's version number at the beginning of
|
||||
execution, and report the final form of the include path.
|
||||
.IP "\fB\-H\fR" 4
|
||||
.Ip "\fB\-H\fR" 4
|
||||
.IX Item "-H"
|
||||
Print the name of each header file used, in addition to other normal
|
||||
activities. Each name is indented to show how deep in the
|
||||
\&\fB#include\fR stack it is.
|
||||
.IP "\fB\-version\fR" 4
|
||||
.Ip "\fB\-version\fR" 4
|
||||
.IX Item "-version"
|
||||
.PD 0
|
||||
.IP "\fB\-\-version\fR" 4
|
||||
.IX Item "--version"
|
||||
.Ip "\fB\*(--version\fR" 4
|
||||
.IX Item "version"
|
||||
.PD
|
||||
Print out \s-1GNU\s0 \s-1CPP\s0's version number. With one dash, proceed to
|
||||
preprocess as normal. With two dashes, exit immediately.
|
||||
|
@ -775,14 +781,14 @@ Note that you can also specify places to search using options such as
|
|||
\&\fB\-M\fR. These take precedence over
|
||||
environment variables, which in turn take precedence over the
|
||||
configuration of \s-1GCC\s0.
|
||||
.IP "\fB\s-1CPATH\s0\fR" 4
|
||||
.Ip "\fB\s-1CPATH\s0\fR" 4
|
||||
.IX Item "CPATH"
|
||||
.PD 0
|
||||
.IP "\fBC_INCLUDE_PATH\fR" 4
|
||||
.Ip "\fBC_INCLUDE_PATH\fR" 4
|
||||
.IX Item "C_INCLUDE_PATH"
|
||||
.IP "\fB\s-1CPLUS_INCLUDE_PATH\s0\fR" 4
|
||||
.Ip "\fB\s-1CPLUS_INCLUDE_PATH\s0\fR" 4
|
||||
.IX Item "CPLUS_INCLUDE_PATH"
|
||||
.IP "\fB\s-1OBJC_INCLUDE_PATH\s0\fR" 4
|
||||
.Ip "\fB\s-1OBJC_INCLUDE_PATH\s0\fR" 4
|
||||
.IX Item "OBJC_INCLUDE_PATH"
|
||||
.PD
|
||||
Each variable's value is a list of directories separated by a special
|
||||
|
@ -806,7 +812,7 @@ search its current working directory. Empty elements can appear at the
|
|||
beginning or end of a path. For instance, if the value of
|
||||
\&\fB\s-1CPATH\s0\fR is \f(CW\*(C`:/special/include\*(C'\fR, that has the same
|
||||
effect as \fB\-I.\ \-I/special/include\fR.
|
||||
.IP "\fB\s-1DEPENDENCIES_OUTPUT\s0\fR" 4
|
||||
.Ip "\fB\s-1DEPENDENCIES_OUTPUT\s0\fR" 4
|
||||
.IX Item "DEPENDENCIES_OUTPUT"
|
||||
If this variable is set, its value specifies how to output
|
||||
dependencies for Make based on the non-system header files processed
|
||||
|
@ -822,7 +828,7 @@ file \fIfile\fR using \fItarget\fR as the target name.
|
|||
In other words, this environment variable is equivalent to combining
|
||||
the options \fB\-MM\fR and \fB\-MF\fR,
|
||||
with an optional \fB\-MT\fR switch too.
|
||||
.IP "\fB\s-1SUNPRO_DEPENDENCIES\s0\fR" 4
|
||||
.Ip "\fB\s-1SUNPRO_DEPENDENCIES\s0\fR" 4
|
||||
.IX Item "SUNPRO_DEPENDENCIES"
|
||||
This variable is the same as \fB\s-1DEPENDENCIES_OUTPUT\s0\fR (see above),
|
||||
except that system header files are not ignored, so it implies
|
||||
|
@ -835,7 +841,7 @@ main input file is omitted.
|
|||
.SH "COPYRIGHT"
|
||||
.IX Header "COPYRIGHT"
|
||||
Copyright (c) 1987, 1989, 1991, 1992, 1993, 1994, 1995, 1996,
|
||||
1997, 1998, 1999, 2000, 2001, 2002, 2003
|
||||
1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004
|
||||
Free Software Foundation, Inc.
|
||||
.PP
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
|
@ -849,7 +855,6 @@ This manual contains no Invariant Sections. The Front-Cover Texts are
|
|||
.Vb 1
|
||||
\& A GNU Manual
|
||||
.Ve
|
||||
.PP
|
||||
(b) The \s-1FSF\s0's Back-Cover Text is:
|
||||
.PP
|
||||
.Vb 3
|
||||
|
|
Loading…
Reference in New Issue