From 5e00ec74d8ce58f99801200d4d3d0412c7cc1b28 Mon Sep 17 00:00:00 2001 From: kan Date: Wed, 28 Jul 2004 03:11:36 +0000 Subject: Gcc 3.4.2 20040728. --- contrib/gcc/c.opt | 825 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 825 insertions(+) create mode 100644 contrib/gcc/c.opt (limited to 'contrib/gcc/c.opt') diff --git a/contrib/gcc/c.opt b/contrib/gcc/c.opt new file mode 100644 index 0000000..2a2ff85 --- /dev/null +++ b/contrib/gcc/c.opt @@ -0,0 +1,825 @@ +; Options for the C, ObjC, C++ and ObjC++ front ends. +; Copyright (C) 2003 Free Software Foundation, Inc. +; +; This file is part of GCC. +; +; GCC is free software; you can redistribute it and/or modify it under +; the terms of the GNU General Public License as published by the Free +; Software Foundation; either version 2, or (at your option) any later +; version. +; +; GCC is distributed in the hope that it will be useful, but WITHOUT ANY +; WARRANTY; without even the implied warranty of MERCHANTABILITY or +; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +; for more details. +; +; You should have received a copy of the GNU General Public License +; along with GCC; see the file COPYING. If not, write to the Free +; Software Foundation, 59 Temple Place - Suite 330, Boston, MA +; 02111-1307, USA. + + +; This file is processed by the script opts.sh. It is a database of +; command line options, with each record separated by a blank line, +; and each field appearing on its own line. The first field is the +; command-line switch with the leading "-" removed. All options +; beginning with "f" or "W" are implicitly assumed to take a "no-" +; form; this form should not be listed. If you do not want this +; negative form and you want it to be automatically rejected, add +; RejectNegative to the second field. + +; The second field is a space-separated list of which parts of the +; compiler recognize the switch, as declared by "Language" entries. +; If the switch takes an argument, then you should also specify +; "Joined" and/or "Separate" to indicate where the argument can +; appear. If a Joined argument can legitimately be omitted, specify +; "JoinedOrMissing" instead of "Joined". If the argument to a switch +; is a non-negative integer, you can specify "UInteger" and the switch +; decoder will convert the argument for you, or complain to the user +; if the argument is invalid. + +; The third field is the help text to output with --help. This is +; automatically line-wrapped on output. Normally the switch is output +; automatically, with the help text on the right hand side of the +; output. However, if the help text contains a tab character, the +; text to the left of the tab is output instead of the switch, and the +; text to its right forms the help. This is useful for elaborating on +; what type of argument a switch takes, for example. If the second +; field contains "Undocumented" then nothing is output with --help. +; Only do this with good reason like the switch being internal between +; the driver and the front end - it is not an excuse to leave a switch +; undocumented. + +; Comments can appear on their own line anwhere in the file, preceded +; by a semicolon. Whitespace is permitted before the semicolon. + +; For each switch XXX below, an enumeration constant is created by the +; script opts.sh spelt OPT_XXX, but with all non-alphanumeric +; characters replaced with an underscore. + +; Please try to keep this file in ASCII collating order. + +Language +C + +Language +ObjC + +Language +C++ + +Language +ObjC++ + +-output-pch= +C ObjC C++ ObjC++ Joined Separate + +A +C ObjC C++ ObjC++ Joined Separate +-A= Assert the to . Putting '-' before disables the to + +C +C ObjC C++ ObjC++ +Do not discard comments + +CC +C ObjC C++ ObjC++ +Do not discard comments in macro expansions + +D +C ObjC C++ ObjC++ Joined Separate +-D[=] Define a with as its value. If just is given, is taken to be 1 + +E +C ObjC C++ ObjC++ Undocumented + +H +C ObjC C++ ObjC++ +Print the name of header files as they are used + +I +C ObjC C++ ObjC++ Joined Separate +-I Add to the end of the main include path. -I- gives more include path control; see info documentation + +M +C ObjC C++ ObjC++ +Generate make dependencies + +MD +C ObjC C++ ObjC++ Separate +Generate make dependencies and compile + +MF +C ObjC C++ ObjC++ Joined Separate +-MF Write dependency output to the given file + +MG +C ObjC C++ ObjC++ +Treat missing header files as generated files + +MM +C ObjC C++ ObjC++ +Like -M but ignore system header files + +MMD +C ObjC C++ ObjC++ Separate +Like -MD but ignore system header files + +MP +C ObjC C++ ObjC++ +Generate phony targets for all headers + +MQ +C ObjC C++ ObjC++ Joined Separate +-MQ Add a MAKE-quoted target + +MT +C ObjC C++ ObjC++ Joined Separate +-MT Add an unquoted target + +P +C ObjC C++ ObjC++ +Do not generate #line directives + +U +C ObjC C++ ObjC++ Joined Separate +-U Undefine + +Wabi +C++ ObjC++ + +Wall +C ObjC C++ ObjC++ +Enable most warning messages + +Wbad-function-cast +C ObjC +Warn about casting functions to incompatible types + +Wcast-qual +C ObjC C++ ObjC++ +Warn about casts which discard qualifiers + +Wchar-subscripts +C ObjC C++ ObjC++ +Warn about subscripts whose type is \"char\" + +Wcomment +C ObjC C++ ObjC++ +Warn about possibly nested block comments, and C++ comments spanning more than one physical line + +Wcomments +C ObjC C++ ObjC++ +Synonym for -Wcomment + +Wconversion +C ObjC C++ ObjC++ +Warn about possibly confusing type conversions + +Wctor-dtor-privacy +C++ ObjC++ +Warn when all constructors and destructors are private + +Wdeclaration-after-statement +C ObjC +Warn when a declaration is found after a statement + +Wdeprecated +C++ ObjC++ +Warn about deprecated compiler features + +Wdiv-by-zero +C ObjC +Warn about compile-time integer division by zero + +Weffc++ +C++ ObjC++ +Warn about violations of Effective C++ style rules + +Wendif-labels +C ObjC C++ ObjC++ +Warn about stray tokens after #elif and #endif + +Werror +C ObjC C++ ObjC++ +; Documented in common.opt + +Werror-implicit-function-declaration +C ObjC RejectNegative +Make implicit function declarations an error + +Wfloat-equal +C ObjC C++ ObjC++ +Warn if testing floating point numbers for equality + +Wformat +C ObjC C++ ObjC++ +Warn about printf/scanf/strftime/strfmon format string anomalies + +Wformat-extra-args +C ObjC C++ ObjC++ +Warn if passing too many arguments to a function for its format string + +Wformat-nonliteral +C ObjC C++ ObjC++ +Warn about format strings that are not literals + +Wformat-security +C ObjC C++ ObjC++ +Warn about possible security problems with format functions + +Wformat-y2k +C ObjC C++ ObjC++ +Warn about strftime formats yielding 2-digit years + +Wformat-zero-length +C ObjC + +Wformat= +C ObjC C++ ObjC++ Joined + +Winit-self +C ObjC C++ ObjC++ +Warn about variables which are initialized to themselves. + +Wimplicit +C ObjC C++ ObjC++ + +Wimplicit-function-declaration +C ObjC +Warn about implicit function declarations + +Wimplicit-int +C ObjC +Warn when a declaration does not specify a type + +Wimport +C ObjC C++ ObjC++ +Deprecated. This switch has no effect. + +Winvalid-offsetof +C++ ObjC++ +Warn about invalid uses of the \"offsetof\" macro + +Winvalid-pch +C ObjC C++ ObjC++ +Warn about PCH files that are found but not used + +Wlong-long +C ObjC C++ ObjC++ +Do not warn about using \"long long\" when -pedantic + +Wmain +C ObjC +Warn about suspicious declarations of \"main\" + +Wmissing-braces +C ObjC C++ ObjC++ +Warn about possibly missing braces around initializers + +Wmissing-declarations +C ObjC +Warn about global functions without previous declarations + +Wmissing-format-attribute +C ObjC C++ ObjC++ +Warn about functions which might be candidates for format attributes + +Wmissing-prototypes +C ObjC +Warn about global functions without prototypes + +Wmultichar +C ObjC C++ ObjC++ +Warn about use of multi-character character constants + +Wnested-externs +C ObjC +Warn about \"extern\" declarations not at file scope + +Wnon-template-friend +C++ ObjC++ +Warn when non-templatized friend functions are declared within a template + +Wnon-virtual-dtor +C++ ObjC++ +Warn about non-virtual destructors + +Wnonnull +C ObjC + +Wold-style-cast +C++ ObjC++ +Warn if a C-style cast is used in a program + +Wold-style-definition +C ObjC +Warn if an old-style parameter definition is used + +Woverloaded-virtual +C++ ObjC++ +Warn about overloaded virtual function names + +Wparentheses +C ObjC C++ ObjC++ +Warn about possibly missing parentheses + +Wpmf-conversions +C++ ObjC++ +Warn when converting the type of pointers to member functions + +Wpointer-arith +C ObjC C++ ObjC++ +Warn about function pointer arithmetic + +Wprotocol +ObjC ObjC++ +Warn if inherited methods are unimplemented + +Wredundant-decls +C ObjC C++ ObjC++ +Warn about multiple declarations of the same object + +Wreorder +C++ ObjC++ +Warn when the compiler reorders code + +Wreturn-type +C ObjC C++ ObjC++ +Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++) + +Wselector +ObjC ObjC++ +Warn if a selector has multiple methods + +Wsequence-point +C ObjC +Warn about possible violations of sequence point rules + +Wsign-compare +C ObjC C++ ObjC++ +Warn about signed-unsigned comparisons + +Wsign-promo +C++ ObjC++ +Warn when overload promotes from unsigned to signed + +Wstrict-prototypes +C ObjC +Warn about unprototyped function declarations + +Wsynth +C++ ObjC++ +Warn when synthesis behavior differs from Cfront + +Wsystem-headers +C ObjC C++ ObjC++ +Do not suppress warnings from system headers + +Wtraditional +C ObjC +Warn about features not present in traditional C + +Wtrigraphs +C ObjC C++ ObjC++ +Warn if trigraphs are encountered that might affect the meaning of the program + +Wundeclared-selector +ObjC ObjC++ + +Wundef +C ObjC C++ ObjC++ +Warn if an undefined macro is used in an #if directive + +Wunknown-pragmas +C ObjC C++ ObjC++ +Warn about unrecognized pragmas + +Wunused-macros +C ObjC C++ ObjC++ +Warn about macros defined in the main file that are not used + +Wwrite-strings +C ObjC C++ ObjC++ +Give strings the type \"array of char\" + +ansi +C ObjC C++ ObjC++ +A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead + +d +C ObjC C++ ObjC++ Joined +; Documented in common.opt. FIXME - what about -dI, -dD, -dN and -dD? + +faccess-control +C++ ObjC++ +Enforce class member access control semantics + +fall-virtual +C++ ObjC++ + +falt-external-templates +C++ ObjC++ +Change when template instances are emitted + +fasm +C ObjC C++ ObjC++ +Recognize the \"asm\" keyword + +fbuiltin +C ObjC C++ ObjC++ +Recognize built-in functions + +fbuiltin- +C ObjC C++ ObjC++ Joined + +fcheck-new +C++ ObjC++ +Check the return value of new + +fcond-mismatch +C ObjC C++ ObjC++ +Allow the arguments of the '?' operator to have different types + +fconserve-space +C++ ObjC++ +Reduce the size of object files + +fconst-strings +C++ ObjC++ +Make string literals \"const char[]\" not \"char[]\" + +fconstant-string-class= +ObjC ObjC++ Joined +-fconst-string-class= Use class for constant strings + +fdefault-inline +C++ ObjC++ +Inline member functions by default + +fdollars-in-identifiers +C ObjC C++ ObjC++ +Permit '$' as an identifier character + +fdump- +C ObjC C++ ObjC++ Joined RejectNegative +-fdump- Dump various compiler internals to a file + +felide-constructors +C++ ObjC++ + +fenforce-eh-specs +C++ ObjC++ +Generate code to check exception specifications + +fenum-int-equiv +C++ ObjC++ + +fexec-charset= +C ObjC C++ ObjC++ Joined RejectNegative +-fexec-charset= Convert all strings and character constants to character set + +finput-charset= +C ObjC C++ ObjC++ Joined RejectNegative +-finput-charset= Specify the default character set for source files. + + +fexternal-templates +C++ ObjC++ + +ffixed-form +C ObjC + +ffixed-line-length- +C ObjC Joined + +ffor-scope +C++ ObjC++ +Scope of for-init-statement variables is local to the loop + +ffreestanding +C ObjC +Do not assume that standard C libraries and \"main\" exist + +fgnu-keywords +C++ ObjC++ +Recognize GNU-defined keywords + +fgnu-runtime +ObjC ObjC++ +Generate code for GNU runtime environment + +fguiding-decls +C++ ObjC++ + +fhandle-exceptions +C++ ObjC++ + +fhonor-std +C++ ObjC++ + +fhosted +C ObjC +Assume normal C execution environment + +fhuge-objects +C++ ObjC++ +Enable support for huge objects + +fimplement-inlines +C++ ObjC++ +Export functions even if they can be inlined + +fimplicit-inline-templates +C++ ObjC++ +Emit implicit instantiations of inline templates + +fimplicit-templates +C++ ObjC++ +Emit implicit instantiations of templates + +flabels-ok +C++ ObjC++ + +fms-extensions +C ObjC C++ ObjC++ +Don't warn about uses of Microsoft extensions + +fname-mangling-version- +C++ ObjC++ Joined + +fnew-abi +C++ ObjC++ + +fnext-runtime +ObjC ObjC++ +Generate code for NeXT (Apple Mac OS X) runtime environment + +fnil-receivers +ObjC ObjC++ +Assume that receivers of Objective-C messages may be nil + +fnonansi-builtins +C++ ObjC++ + +fnonnull-objects +C++ ObjC++ + +fobjc-exceptions +ObjC ObjC++ +Enable Objective-C exception and synchronization syntax + +foperator-names +C++ ObjC++ +Recognize C++ kewords like \"compl\" and \"xor\" + +foptional-diags +C++ ObjC++ +Enable optional diagnostics + +fpch-deps +C ObjC C++ ObjC++ + +fpermissive +C++ ObjC++ +Downgrade conformance errors to warnings + +fpreprocessed +C ObjC C++ ObjC++ +Treat the input file as already preprocessed + +freplace-objc-classes +ObjC ObjC++ +Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime + +frepo +C++ ObjC++ +Enable automatic template instantiation + +frtti +C++ ObjC++ +Generate run time type descriptor information + +fshort-double +C ObjC C++ ObjC++ +Use the same size for double as for float + +fshort-enums +C ObjC C++ ObjC++ +Use the narrowest integer type possible for enumeration types + +fshort-wchar +C ObjC C++ ObjC++ +Force the underlying type for \"wchar_t\" to be \"unsigned short\" + +fshow-column +C ObjC C++ ObjC++ + +fsigned-bitfields +C ObjC C++ ObjC++ +When \"signed\" or \"unsigned\" is not given make the bitfield signed + +fsigned-char +C ObjC C++ ObjC++ +Make \"char\" signed by default + +fsquangle +C++ ObjC++ + +fstats +C++ ObjC++ +Display statistics accumulated during compilation + +fstrict-prototype +C++ ObjC++ + +ftabstop= +C ObjC C++ ObjC++ Joined RejectNegative UInteger +-ftabstop= Distance between tab stops for column reporting + +ftemplate-depth- +C++ ObjC++ Joined RejectNegative UInteger +-ftemplate-depth- Specify maximum template instantiation depth + +fthis-is-variable +C++ ObjC++ + +funsigned-bitfields +C ObjC C++ ObjC++ +When \"signed\" or \"unsigned\" is not given make the bitfield unsigned + +funsigned-char +C ObjC C++ ObjC++ +Make \"char\" unsigned by default + +fuse-cxa-atexit +C++ ObjC++ +Use __cxa_atexit to register destructors + +fvtable-gc +C++ ObjC++ +Discard unused virtual functions + +fvtable-thunks +C++ ObjC++ +Implement vtables using thunks + +fweak +C++ ObjC++ +Emit common-like symbols as weak symbols + +fwide-exec-charset= +C ObjC C++ ObjC++ Joined RejectNegative +-fwide-exec-charset= Convert all wide strings and character constants to character set + +fworking-directory +C ObjC C++ ObjC++ +Generate a #line directive pointing at the current working directory + +fxref +C++ ObjC++ +Emit cross referencing information + +fzero-link +ObjC ObjC++ +Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode + +gen-decls +ObjC ObjC++ +Dump declarations to a .decl file + +idirafter +C ObjC C++ ObjC++ Joined Separate +-idirafter Add to the end of the system include path + +imacros +C ObjC C++ ObjC++ Joined Separate +-imacros Accept definition of macros in + +include +C ObjC C++ ObjC++ Joined Separate +-include Include the contents of before other files + +iprefix +C ObjC C++ ObjC++ Joined Separate +-iprefix Specify as a prefix for next two options + +isysroot +C ObjC C++ ObjC++ Joined Separate +-isysroot Set to be the system root directory + +isystem +C ObjC C++ ObjC++ Joined Separate +-isystem Add to the start of the system include path + +iwithprefix +C ObjC C++ ObjC++ Joined Separate +-iwithprefix Add to the end of the system include path + +iwithprefixbefore +C ObjC C++ ObjC++ Joined Separate +-iwithprefixbefore Add to the end of the main include path + +lang-asm +C Undocumented + +lang-objc +C ObjC C++ ObjC++ Undocumented + +nostdinc +C ObjC C++ ObjC++ +Do not search standard system include directories (those specified with -isystem will still be used) + +nostdinc++ +C++ ObjC++ +Do not search standard system include directories for C++ + +o +C ObjC C++ ObjC++ Joined Separate +; Documented in common.opt + +pedantic +C ObjC C++ ObjC++ +; Documented in common.opt + +pedantic-errors +C ObjC C++ ObjC++ +; Documented in common.opt + +print-objc-runtime-info +ObjC ObjC++ +Generate C header of platform-specific features + +remap +C ObjC C++ ObjC++ +Remap file names when including files + +std=c++98 +C++ ObjC++ +Conform to the ISO 1998 C++ standard + +std=c89 +C ObjC +Conform to the ISO 1990 C standard + +std=c99 +C ObjC +Conform to the ISO 1999 C standard + +std=c9x +C ObjC +Deprecated in favor of -std=c99 + +std=gnu++98 +C++ ObjC++ +Conform to the ISO 1998 C++ standard with GNU extensions + +std=gnu89 +C ObjC +Conform to the ISO 1990 C standard with GNU extensions + +std=gnu99 +C ObjC +Conform to the ISO 1999 C standard with GNU extensions + +std=gnu9x +C ObjC +Deprecated in favor of -std=gnu99 + +std=iso9899:1990 +C ObjC +Deprecated in favor of -std=c89 + +std=iso9899:199409 +C ObjC +Conform to the ISO 1990 C standard as amended in 1994 + +std=iso9899:1999 +C ObjC +Deprecated in favor of -std=c99 + +std=iso9899:199x +C ObjC +Deprecated in favor of -std=c99 + +traditional-cpp +C ObjC C++ ObjC++ +Enable traditional preprocessing + +trigraphs +C ObjC C++ ObjC++ +-trigraphs Support ISO C trigraphs + +undef +C ObjC C++ ObjC++ +Do not predefine system-specific and GCC-specific macros + +v +C ObjC C++ ObjC++ +Enable verbose output + +w +C ObjC C++ ObjC++ +; Documented in common.opt + +; This comment is to ensure we retain the blank line above. -- cgit v1.1