7.6.3 Options for Controlling the C Dialect
The following options define the kind of C dialect used by the compiler.
Option | Definition |
---|---|
-ansi | Support all (and only) ANSI-standard C programs. |
-aux-info
filename | Output to the given file name prototype
declarations for all functions declared and/or defined in a translation
unit, including those in header files. This option is silently ignored
in any language other than C. Besides declarations, the file indicates,
in comments, the origin of each declaration (source file and line),
whether the declaration was implicit, prototyped or unprototyped
(I , N for new or
O for old, respectively, in the first character
after the line number and the colon), and whether it came from a
declaration or a definition (C or F ,
respectively, in the following character). In the case of function
definitions, a K&R-style list of arguments followed by their
declarations is also provided, inside comments, after the
declaration. |
-menable-fixed[=rounding
mode] | Enable fixed-point variable types and
arithmetic operation support. Optionally, set the default
rounding mode to one of
truncation, conventional, or convergent. If the
rounding mode is not specified, the
default is truncation. |
-ffreestanding | Assert that compilation takes place in
a freestanding
environment. This implies -fno-builtin .
A freestanding environment is one in which the standard library may not
exist, and program startup may not necessarily be at main. The most
obvious example is an OS kernel. This is equivalent to
-fno-hosted . |
-fno-asm | Will not recognize
asm , inline or typeof
as a keyword, so that code can use these words as identifiers. You can
use the keywords __asm__ , __inline__
and __typeof__ instead.
|
-fno-builtin
| Will not recognize built-in functions
that do not begin with __builtin_ as prefix. |
-fsigned-char | Let the type char be
signed, like signed char . (This is the
default.) |
-fsigned-bitfields
| These options control whether a
bit-field is signed or unsigned, when the declaration does not use
either signed or unsigned. By default, such a bit-field is signed,
unless -traditional is used, in which case bit-fields
are always unsigned. |
-funsigned-char | Let the type char be
unsigned, like unsigned char . |