diff options
author | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-27 18:48:07 +0000 |
---|---|---|
committer | zack <zack@138bc75d-0d04-0410-961f-82ee72b054a4> | 2002-02-27 18:48:07 +0000 |
commit | 455730ef01722bf6b27dbe597b1b9395ce949215 (patch) | |
tree | aff434354f9eafe5065d231d996385e95f0669b4 /gcc/doc/invoke.texi | |
parent | 4c19a415b45bdf46bbaa459193e2ec2ccff8f3dc (diff) | |
download | gcc-455730ef01722bf6b27dbe597b1b9395ce949215.tar.gz |
* c-common.c, c-common.h, c-decl.c, c-lex.c, c-parse.in,
c-tree.h, c-typeck.c, cppexp.c, cpplex.c, cpplib.c, cpplib.h,
cppmacro.c, objc/lang-specs.h, objc/objc-act.c,
builtin-types.def, builtins.def, dwarf2out.c, dwarfout.c,
gcc.c, toplev.c: Delete code implementing -traditional mode.
* ada/misc.c, ch/ch-tree.h, ch/decl.c, cp/decl2.c, f/com.c,
f/lex.c, f/top.c, java/builtins.c, java/decl.c: Delete
traditional-mode-related code copied from the C front end
but not used, or used only to permit the compiler to link.
* doc/bugreport.texi, doc/cpp.texi, doc/extend.texi,
doc/invoke.texi, doc/standards.texi, doc/trouble.texi:
Document removal of -traditional mode for compilation, and
remove documentation only relevant to that mode.
* config/nextstep.h, config/ptx4.h, config/svr4.h,
config/convex/convex.h, config/d30v/d30v.h,
config/i386/dgux.h, config/i386/osf1elf.h,
config/i386/osfelf.h, config/i386/osfrose.h,
config/i386/sco5.h, config/i386/sol2.h, config/m68k/a-ux.h,
config/m68k/hp310.h, config/m88k/dgux.h,
config/m88k/dguxbcs.h, config/m88k/luna.h, config/m88k/m88k.c,
config/m88k/m88k.h, config/m88k/openbsd.h,
config/mips/abi64.h, config/mips/osfrose.h,
config/mips/svr4-5.h, config/mips/svr4-t.h,
config/sparc/sol2-sld-64.h, config/sparc/sol2.h,
config/stormy16/stormy16.h: Remove all references to
-traditional from target specs. Delete all mention of the
no-longer-necessary TRADITIONAL_RETURN_FLOAT macro. Also
delete a couple of commented-out definitions of
DOLLARS_IN_IDENTIFIERS, with (incorrect) commentary referring
to -traditional.
* system.h: Poison TRADITIONAL_RETURN_FLOAT.
* doc/tm.texi: Remove mention of TRADITIONAL_RETURN_FLOAT macro.
* testsuite/gcc.c-torture/execute/920730-1t.c,
testsuite/gcc.c-torture/execute/920730-1t.x,
testsuite/gcc.dg/ext-glob.c: Delete test cases, only relevant
to -traditional.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@50110 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/doc/invoke.texi')
-rw-r--r-- | gcc/doc/invoke.texi | 93 |
1 files changed, 7 insertions, 86 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 760c1952018..90df7de7361 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -1144,75 +1144,13 @@ options for strict ISO C conformance) implies @option{-trigraphs}. @cindex traditional C language @cindex C language, traditional @item -traditional -@opindex traditional -Attempt to support some aspects of traditional C compilers. -Specifically: - -@itemize @bullet -@item -All @code{extern} declarations take effect globally even if they -are written inside of a function definition. This includes implicit -declarations of functions. - -@item -The newer keywords @code{typeof}, @code{inline}, @code{signed}, @code{const} -and @code{volatile} are not recognized. (You can still use the -alternative keywords such as @code{__typeof__}, @code{__inline__}, and -so on.) - -@item -Comparisons between pointers and integers are always allowed. - -@item -Integer types @code{unsigned short} and @code{unsigned char} promote -to @code{unsigned int}. - -@item -Out-of-range floating point literals are not an error. - -@item -Certain constructs which ISO regards as a single invalid preprocessing -number, such as @samp{0xe-0xd}, are treated as expressions instead. - -@item -String ``constants'' are not necessarily constant; they are stored in -writable space, and identical looking constants are allocated -separately. (This is the same as the effect of -@option{-fwritable-strings}.) - -@cindex @code{longjmp} and automatic variables -@item -All automatic variables not declared @code{register} are preserved by -@code{longjmp}. Ordinarily, GNU C follows ISO C: automatic variables -not declared @code{volatile} may be clobbered. - -@item -@cindex @samp{\x} -@cindex @samp{\a} -@cindex escape sequences, traditional -The character escape sequences @samp{\x} and @samp{\a} evaluate as the -literal characters @samp{x} and @samp{a} respectively. Without -@w{@option{-traditional}}, @samp{\x} is a prefix for the hexadecimal -representation of a character, and @samp{\a} produces a bell. -@end itemize - -This option is deprecated and may be removed. - -You may wish to use @option{-fno-builtin} as well as @option{-traditional} -if your program uses names that are normally GNU C built-in functions for -other purposes of its own. - -You cannot use @option{-traditional} if you include any header files that -rely on ISO C features. Some vendors are starting to ship systems with -ISO C header files and you cannot use @option{-traditional} on such -systems to compile files that include any system headers. - -The @option{-traditional} option also enables @option{-traditional-cpp}. - -@item -traditional-cpp +@itemx -traditional-cpp @opindex traditional-cpp -Attempt to support some aspects of traditional C preprocessors. -See the GNU CPP manual for details. +@opindex traditional +Formerly, these options caused GCC to attempt to emulate a pre-standard +C compiler. They are now only supported with the @option{-E} switch. +The preprocessor continues to support a pre-standard mode. See the GNU +CPP manual for details. @item -fcond-mismatch @opindex fcond-mismatch @@ -1260,32 +1198,15 @@ declaration does not use either @code{signed} or @code{unsigned}. By default, such a bit-field is signed, because this is consistent: the basic integer types such as @code{int} are signed types. -However, when @option{-traditional} is used, bit-fields are all unsigned -no matter what. - @item -fwritable-strings @opindex fwritable-strings Store string constants in the writable data segment and don't uniquize them. This is for compatibility with old programs which assume they can -write into string constants. The option @option{-traditional} also has -this effect. +write into string constants. Writing into string constants is a very bad idea; ``constants'' should be constant. -@item -fallow-single-precision -@opindex fallow-single-precision -Do not promote single precision math operations to double precision, -even when compiling with @option{-traditional}. - -Traditional K&R C promotes all floating point operations to double -precision, regardless of the sizes of the operands. On the -architecture for which you are compiling, single precision may be faster -than double precision. If you must use @option{-traditional}, but want -to use single precision operations when the operands are single -precision, use this option. This option has no effect when compiling -with ISO or GNU C conventions (the default). - @item -fshort-wchar @opindex fshort-wchar Override the underlying type for @samp{wchar_t} to be @samp{short |