X-Git-Url: http://git.sourceforge.jp/view?a=blobdiff_plain;f=gcc%2Fc.opt;h=e8a9a31a382a45a01a28bf195c66da4823a29939;hb=50cb26651222ea939e524cd25a5bde2b152f8ce2;hp=4f9859f6a7a7fe352f0cd92c36e221d38ab8029a;hpb=c17b85eafa482aa4b14b5c81bac7a471e41393c7;p=pf3gnuchains%2Fgcc-fork.git diff --git a/gcc/c.opt b/gcc/c.opt index 4f9859f6a7a..e8a9a31a382 100644 --- a/gcc/c.opt +++ b/gcc/c.opt @@ -1,61 +1,24 @@ ; Options for the C, ObjC, C++ and ObjC++ front ends. -; Copyright (C) 2003 Free Software Foundation, Inc. +; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 +; 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 +; Software Foundation; either version 3, 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. +; along with GCC; see the file COPYING3. If not see +; . + +; See the GCC internals manual for a description of this file's format. ; Please try to keep this file in ASCII collating order. @@ -93,13 +56,17 @@ C ObjC C++ ObjC++ Joined Separate E C ObjC C++ ObjC++ Undocumented +F +C ObjC C++ ObjC++ Joined Separate +-F Add to the end of the main framework include path + 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 +-I Add to the end of the main include path M C ObjC C++ ObjC++ @@ -146,274 +113,409 @@ C ObjC C++ ObjC++ Joined Separate -U Undefine Wabi -C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_abi) Warning +Warn about things that will change when compiling with an ABI-compliant compiler + +Wpsabi +C ObjC C++ ObjC++ Var(warn_psabi) Init(1) Undocumented + +Waddress +C ObjC C++ ObjC++ Var(warn_address) Warning +Warn about suspicious uses of memory addresses Wall -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Enable most warning messages +Wassign-intercept +ObjC ObjC++ Var(warn_assign_intercept) Warning +Warn whenever an Objective-C assignment is being intercepted by the garbage collector + Wbad-function-cast -C ObjC +C ObjC Var(warn_bad_function_cast) Warning Warn about casting functions to incompatible types +Wbuiltin-macro-redefined +C ObjC C++ ObjC++ Warning +Warn when a built-in preprocessor macro is undefined or redefined + +Wc++-compat +C ObjC Var(warn_cxx_compat) Warning +Warn about C constructs that are not in the common subset of C and C++ + +Wc++0x-compat +C++ ObjC++ Var(warn_cxx0x_compat) Warning +Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 200x + Wcast-qual -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_cast_qual) Warning Warn about casts which discard qualifiers Wchar-subscripts -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_char_subscripts) Warning Warn about subscripts whose type is \"char\" +Wclobbered +C ObjC C++ ObjC++ Var(warn_clobbered) Init(-1) Warning +Warn about variables that might be changed by \"longjmp\" or \"vfork\" + Wcomment -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn about possibly nested block comments, and C++ comments spanning more than one physical line Wcomments -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Synonym for -Wcomment Wconversion -C ObjC C++ ObjC++ -Warn about possibly confusing type conversions +C ObjC C++ ObjC++ Var(warn_conversion) Warning +Warn for implicit type conversions that may change a value + +Wsign-conversion +C ObjC C++ ObjC++ Var(warn_sign_conversion) Init(-1) +Warn for implicit type conversions between signed and unsigned integers Wctor-dtor-privacy -C++ ObjC++ +C++ ObjC++ Var(warn_ctor_dtor_privacy) Warning Warn when all constructors and destructors are private Wdeclaration-after-statement -C ObjC +C ObjC Var(warn_declaration_after_statement) Warning Warn when a declaration is found after a statement Wdeprecated -C++ ObjC++ -Warn about deprecated compiler features +C C++ ObjC ObjC++ Var(warn_deprecated) Init(1) Warning +Warn if a deprecated compiler feature, class, method, or field is used Wdiv-by-zero -C ObjC +C ObjC C++ ObjC++ Var(warn_div_by_zero) Init(1) Warning Warn about compile-time integer division by zero Weffc++ -C++ ObjC++ +C++ ObjC++ Var(warn_ecpp) Warning Warn about violations of Effective C++ style rules +Wempty-body +C ObjC C++ ObjC++ Var(warn_empty_body) Init(-1) Warning +Warn about an empty body in an if or else statement + Wendif-labels -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn about stray tokens after #elif and #endif +Wenum-compare +C ObjC C++ ObjC++ Var(warn_enum_compare) Init(-1) Warning +Warn about comparison of different enum types + Werror C ObjC C++ ObjC++ ; Documented in common.opt Werror-implicit-function-declaration -C ObjC RejectNegative -Make implicit function declarations an error +C ObjC RejectNegative Warning +This switch is deprecated; use -Werror=implicit-function-declaration instead Wfloat-equal -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_float_equal) Warning Warn if testing floating point numbers for equality Wformat -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn about printf/scanf/strftime/strfmon format string anomalies Wformat-extra-args -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_format_extra_args) Warning Warn if passing too many arguments to a function for its format string Wformat-nonliteral -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_format_nonliteral) Warning Warn about format strings that are not literals +Wformat-contains-nul +C ObjC C++ ObjC++ Var(warn_format_contains_nul) Warning +Warn about format strings that contain NUL bytes + Wformat-security -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_format_security) Warning Warn about possible security problems with format functions Wformat-y2k -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_format_y2k) Warning Warn about strftime formats yielding 2-digit years Wformat-zero-length -C ObjC +C ObjC Var(warn_format_zero_length) Warning +Warn about zero-length formats Wformat= -C ObjC C++ ObjC++ Joined +C ObjC C++ ObjC++ Joined Warning + +Wignored-qualifiers +C C++ Var(warn_ignored_qualifiers) Init(-1) Warning +Warn whenever type qualifiers are ignored. Winit-self -C ObjC C++ ObjC++ -Warn about variables which are initialized to themselves. +C ObjC C++ ObjC++ Var(warn_init_self) Warning +Warn about variables which are initialized to themselves Wimplicit -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Wimplicit-function-declaration -C ObjC +C ObjC Var(warn_implicit_function_declaration) Init(-1) Warning Warn about implicit function declarations Wimplicit-int -C ObjC +C ObjC Var(warn_implicit_int) Warning Warn when a declaration does not specify a type Wimport -C ObjC C++ ObjC++ -Deprecated. This switch has no effect. +C ObjC C++ ObjC++ Undocumented + +Wint-to-pointer-cast +C ObjC Var(warn_int_to_pointer_cast) Init(1) Warning +Warn when there is a cast to a pointer from an integer of a different size Winvalid-offsetof -C++ ObjC++ +C++ ObjC++ Var(warn_invalid_offsetof) Init(1) Warning Warn about invalid uses of the \"offsetof\" macro Winvalid-pch -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn about PCH files that are found but not used +Wjump-misses-init +C Objc Var(warn_jump_misses_init) Init(-1) Warning +Warn when a jump misses a variable initialization + +Wlogical-op +C ObjC C++ ObjC++ Var(warn_logical_op) Init(0) Warning +Warn when a logical operator is suspiciously always evaluating to true or false + Wlong-long -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_long_long) Init(-1) Warning Do not warn about using \"long long\" when -pedantic Wmain -C ObjC +C ObjC C++ ObjC++ Var(warn_main) Init(-1) Warning Warn about suspicious declarations of \"main\" Wmissing-braces -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_missing_braces) Warning Warn about possibly missing braces around initializers Wmissing-declarations -C ObjC +C ObjC C++ ObjC++ Var(warn_missing_declarations) Warning Warn about global functions without previous declarations +Wmissing-field-initializers +C ObjC C++ ObjC++ Var(warn_missing_field_initializers) Init(-1) Warning +Warn about missing fields in struct initializers + Wmissing-format-attribute -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_missing_format_attribute) Warning Warn about functions which might be candidates for format attributes +Wmissing-include-dirs +C ObjC C++ ObjC++ Warning +Warn about user-specified include directories that do not exist + +Wmissing-parameter-type +C ObjC Var(warn_missing_parameter_type) Init(-1) Warning +Warn about function parameters declared without a type specifier in K&R-style functions + Wmissing-prototypes -C ObjC +C ObjC Var(warn_missing_prototypes) Warning Warn about global functions without prototypes Wmultichar -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn about use of multi-character character constants Wnested-externs -C ObjC +C ObjC Var(warn_nested_externs) Warning Warn about \"extern\" declarations not at file scope Wnon-template-friend -C++ ObjC++ +C++ ObjC++ Var(warn_nontemplate_friend) Init(1) Warning Warn when non-templatized friend functions are declared within a template Wnon-virtual-dtor -C++ ObjC++ +C++ ObjC++ Var(warn_nonvdtor) Warning Warn about non-virtual destructors Wnonnull -C ObjC +C ObjC Var(warn_nonnull) Warning +Warn about NULL being passed to argument slots marked as requiring non-NULL + +Wnormalized= +C ObjC C++ ObjC++ Joined Warning +-Wnormalized= Warn about non-normalised Unicode strings Wold-style-cast -C++ ObjC++ +C++ ObjC++ Var(warn_old_style_cast) Warning Warn if a C-style cast is used in a program +Wold-style-declaration +C ObjC Var(warn_old_style_declaration) Init(-1) Warning +Warn for obsolescent usage in a declaration + Wold-style-definition -C ObjC +C ObjC Var(warn_old_style_definition) Warning Warn if an old-style parameter definition is used +Woverlength-strings +C ObjC C++ ObjC++ Var(warn_overlength_strings) Init(-1) Warning +Warn if a string is longer than the maximum portable length specified by the standard + Woverloaded-virtual -C++ ObjC++ +C++ ObjC++ Var(warn_overloaded_virtual) Warning Warn about overloaded virtual function names +Woverride-init +C ObjC Var(warn_override_init) Init(-1) Warning +Warn about overriding initializers without side effects + +Wpacked-bitfield-compat +C ObjC C++ ObjC++ Var(warn_packed_bitfield_compat) Init(-1) Warning +Warn about packed bit-fields whose offset changed in GCC 4.4 + Wparentheses -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_parentheses) Warning Warn about possibly missing parentheses Wpmf-conversions -C++ ObjC++ +C++ ObjC++ Var(warn_pmf2ptr) Init(1) Warning Warn when converting the type of pointers to member functions Wpointer-arith -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_pointer_arith) Warning Warn about function pointer arithmetic +Wpointer-to-int-cast +C ObjC Var(warn_pointer_to_int_cast) Init(1) Warning +Warn when a pointer is cast to an integer of a different size + +Wpragmas +C ObjC C++ ObjC++ Var(warn_pragmas) Init(1) Warning +Warn about misuses of pragmas + Wprotocol -ObjC ObjC++ +ObjC ObjC++ Var(warn_protocol) Init(1) Warning Warn if inherited methods are unimplemented Wredundant-decls -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_redundant_decls) Warning Warn about multiple declarations of the same object Wreorder -C++ ObjC++ +C++ ObjC++ Var(warn_reorder) Warning Warn when the compiler reorders code Wreturn-type -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_return_type) Warning Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++) Wselector -ObjC ObjC++ +ObjC ObjC++ Var(warn_selector) Warning Warn if a selector has multiple methods Wsequence-point -C ObjC +C ObjC C++ ObjC++ Var(warn_sequence_point) Warning Warn about possible violations of sequence point rules Wsign-compare -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Var(warn_sign_compare) Init(-1) Warning Warn about signed-unsigned comparisons Wsign-promo -C++ ObjC++ +C++ ObjC++ Var(warn_sign_promo) Warning Warn when overload promotes from unsigned to signed +Wstrict-null-sentinel +C++ ObjC++ Warning +Warn about uncasted NULL used as sentinel + Wstrict-prototypes -C ObjC +C ObjC Var(warn_strict_prototypes) Warning Warn about unprototyped function declarations +Wstrict-selector-match +ObjC ObjC++ Var(warn_strict_selector_match) Warning +Warn if type signatures of candidate methods do not match exactly + +Wsync-nand +C C++ Var(warn_sync_nand) Init(1) Warning +Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used + Wsynth -C++ ObjC++ -Warn when synthesis behavior differs from Cfront +C++ ObjC++ Var(warn_synth) Warning +Deprecated. This switch has no effect Wsystem-headers -C ObjC C++ ObjC++ -Do not suppress warnings from system headers +C ObjC C++ ObjC++ Warning +; Documented in common.opt Wtraditional -C ObjC +C ObjC Var(warn_traditional) Warning Warn about features not present in traditional C +Wtraditional-conversion +C ObjC Var(warn_traditional_conversion) Warning +Warn of prototypes causing type conversions different from what would happen in the absence of prototype + Wtrigraphs -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn if trigraphs are encountered that might affect the meaning of the program Wundeclared-selector -ObjC ObjC++ +ObjC ObjC++ Var(warn_undeclared_selector) Warning +Warn about @selector()s without previously declared methods Wundef -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn if an undefined macro is used in an #if directive Wunknown-pragmas -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn about unrecognized pragmas +Wunsuffixed-float-constants +C ObjC Var(warn_unsuffixed_float_constants) Warning +Warn about unsuffixed float constants + Wunused-macros -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Warning Warn about macros defined in the main file that are not used +Wvariadic-macros +C ObjC C++ ObjC++ Warning +Do not warn about using variadic macros when -pedantic + +Wvla +C ObjC C++ ObjC++ Var(warn_vla) Init(-1) Warning +Warn if a variable length array is used + +Wvolatile-register-var +C ObjC C++ ObjC++ Var(warn_volatile_register_var) Warning +Warn when a register variable is declared volatile + Wwrite-strings -C ObjC C++ ObjC++ -Give strings the type \"array of char\" +C ObjC C++ ObjC++ Var(warn_write_strings) Warning +In C++, nonzero means warn about deprecated conversion from string literals to `char *'. In C, similar warning, except that the conversion is of course not deprecated by the ISO C standard. + +Wpointer-sign +C ObjC Var(warn_pointer_sign) Init(-1) Warning +Warn when a pointer differs in signedness in an assignment ansi C ObjC C++ ObjC++ -A synonym for -std=c89. In a future version of GCC it will become synonymous with -std=c99 instead +A synonym for -std=c89 (for C) or -std=c++98 (for C++) d C ObjC C++ ObjC++ Joined ; Documented in common.opt. FIXME - what about -dI, -dD, -dN and -dD? -fabi-version= -C++ ObjC++ Joined UInteger - faccess-control C++ ObjC++ Enforce class member access control semantics @@ -448,10 +550,6 @@ 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 @@ -460,14 +558,14 @@ fdefault-inline C++ ObjC++ Inline member functions by default +fdirectives-only +C ObjC C++ ObjC++ +Preprocess directives only. + 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++ @@ -482,21 +580,24 @@ fexec-charset= C ObjC C++ ObjC++ Joined RejectNegative -fexec-charset= Convert all strings and character constants to character set -fexternal-templates -C++ ObjC++ +fextended-identifiers +C ObjC C++ ObjC++ +Permit universal character names (\\u and \\U) in identifiers -ffixed-form -C ObjC +finput-charset= +C ObjC C++ ObjC++ Joined RejectNegative +-finput-charset= Specify the default character set for source files -ffixed-line-length- -C ObjC Joined + +fexternal-templates +C++ ObjC++ ffor-scope C++ ObjC++ Scope of for-init-statement variables is local to the loop ffreestanding -C ObjC +C ObjC C++ ObjC++ Do not assume that standard C libraries and \"main\" exist fgnu-keywords @@ -507,11 +608,15 @@ fgnu-runtime ObjC ObjC++ Generate code for GNU runtime environment +fgnu89-inline +C ObjC Var(flag_gnu89_inline) Init(-1) +Use traditional GNU semantics for inline functions + fguiding-decls C++ ObjC++ fhandle-exceptions -C++ ObjC++ +C++ ObjC++ Optimization fhonor-std C++ ObjC++ @@ -536,9 +641,17 @@ fimplicit-templates C++ ObjC++ Emit implicit instantiations of templates +ffriend-injection +C++ ObjC++ Var(flag_friend_injection) +Inject friend functions into enclosing namespace + flabels-ok C++ ObjC++ +flax-vector-conversions +C ObjC C++ ObjC++ +Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types. + fms-extensions C ObjC C++ ObjC++ Don't warn about uses of Microsoft extensions @@ -563,13 +676,38 @@ C++ ObjC++ fnonnull-objects C++ ObjC++ +; Generate special '- .cxx_construct' and '- .cxx_destruct' methods +; to initialize any non-POD ivars in Objective-C++ classes. +fobjc-call-cxx-cdtors +ObjC++ Var(flag_objc_call_cxx_cdtors) +Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed + +fobjc-direct-dispatch +ObjC ObjC++ Var(flag_objc_direct_dispatch) +Allow fast jumps to the message dispatcher + +; Nonzero means that we will allow new ObjC exception syntax (@throw, +; @try, etc.) in source code. fobjc-exceptions -ObjC ObjC++ +ObjC ObjC++ Var(flag_objc_exceptions) Enable Objective-C exception and synchronization syntax +fobjc-gc +ObjC ObjC++ Var(flag_objc_gc) +Enable garbage collection (GC) in Objective-C/Objective-C++ programs + +; Nonzero means that we generate NeXT setjmp based exceptions. +fobjc-sjlj-exceptions +ObjC ObjC++ Var(flag_objc_sjlj_exceptions) Init(-1) +Enable Objective-C setjmp exception handling runtime + +fopenmp +C ObjC C++ ObjC++ Var(flag_openmp) +Enable OpenMP (implies -frecursive in Fortran) + foperator-names C++ ObjC++ -Recognize C++ kewords like \"compl\" and \"xor\" +Recognize C++ keywords like \"compl\" and \"xor\" foptional-diags C++ ObjC++ @@ -578,6 +716,10 @@ Enable optional diagnostics fpch-deps C ObjC C++ ObjC++ +fpch-preprocess +C ObjC C++ ObjC++ +Look for and use PCH files even when preprocessing + fpermissive C++ ObjC++ Downgrade conformance errors to warnings @@ -586,6 +728,10 @@ fpreprocessed C ObjC C++ ObjC++ Treat the input file as already preprocessed +fpretty-templates +C++ ObjC++ +-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments + freplace-objc-classes ObjC ObjC++ Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime @@ -595,24 +741,21 @@ C++ ObjC++ Enable automatic template instantiation frtti -C++ ObjC++ +C++ ObjC++ Optimization Generate run time type descriptor information fshort-double -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Optimization Use the same size for double as for float fshort-enums -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Optimization Use the narrowest integer type possible for enumeration types fshort-wchar -C ObjC C++ ObjC++ +C ObjC C++ ObjC++ Optimization 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 @@ -636,12 +779,16 @@ C ObjC C++ ObjC++ Joined RejectNegative UInteger -ftabstop= Distance between tab stops for column reporting ftemplate-depth- -C++ ObjC++ Joined RejectNegative UInteger +C++ ObjC++ Joined RejectNegative UInteger -ftemplate-depth- Specify maximum template instantiation depth fthis-is-variable C++ ObjC++ +fthreadsafe-statics +C++ ObjC++ Optimization +-fno-threadsafe-statics Do not generate thread-safe code for initializing local statics + funsigned-bitfields C ObjC C++ ObjC++ When \"signed\" or \"unsigned\" is not given make the bitfield unsigned @@ -654,6 +801,18 @@ fuse-cxa-atexit C++ ObjC++ Use __cxa_atexit to register destructors +fuse-cxa-get-exception-ptr +C++ ObjC++ +Use __cxa_get_exception_ptr in exception handling + +fvisibility-inlines-hidden +C++ ObjC++ +Marks all inlined methods as having hidden visibility + +fvisibility-ms-compat +C++ ObjC++ Var(flag_visibility_ms_compat) +Changes visibility to match Microsoft Visual Studio by default + fvtable-gc C++ ObjC++ Discard unused virtual functions @@ -686,6 +845,18 @@ gen-decls ObjC ObjC++ Dump declarations to a .decl file +femit-struct-debug-baseonly +C ObjC C++ ObjC++ +-femit-struct-debug-baseonly Aggressive reduced debug info for structs + +femit-struct-debug-reduced +C ObjC C++ ObjC++ +-femit-struct-debug-reduced Conservative reduced debug info for structs + +femit-struct-debug-detailed= +C ObjC C++ ObjC++ Joined +-femit-struct-debug-detailed= Detailed reduced debug info for structs + idirafter C ObjC C++ ObjC++ Joined Separate -idirafter Add to the end of the system include path @@ -694,6 +865,10 @@ imacros C ObjC C++ ObjC++ Joined Separate -imacros Accept definition of macros in +imultilib +C ObjC C++ ObjC++ Joined Separate +-imultilib Set to be the multilib include subdirectory + include C ObjC C++ ObjC++ Joined Separate -include Include the contents of before other files @@ -710,6 +885,10 @@ isystem C ObjC C++ ObjC++ Joined Separate -isystem Add to the start of the system include path +iquote +C ObjC C++ ObjC++ Joined Separate +-iquote Add to the end of the quote include path + iwithprefix C ObjC C++ ObjC++ Joined Separate -iwithprefix Add to the end of the system include path @@ -748,6 +927,10 @@ print-objc-runtime-info ObjC ObjC++ Generate C header of platform-specific features +print-pch-checksum +C ObjC C++ ObjC++ +Print a checksum of the executable for PCH validity checking, and stop + remap C ObjC C++ ObjC++ Remap file names when including files @@ -756,6 +939,13 @@ std=c++98 C++ ObjC++ Conform to the ISO 1998 C++ standard +std=c++0x +C++ ObjC++ +Conform to the ISO 1998 C++ standard, with extensions that are likely to +become a part of the upcoming ISO C++ standard, dubbed C++0x. Note that the +extensions enabled by this mode are experimental and may be removed in +future releases of GCC. + std=c89 C ObjC Conform to the ISO 1990 C standard @@ -772,6 +962,13 @@ std=gnu++98 C++ ObjC++ Conform to the ISO 1998 C++ standard with GNU extensions +std=gnu++0x +C++ ObjC++ +Conform to the ISO 1998 C++ standard, with GNU extensions and +extensions that are likely to become a part of the upcoming ISO C++ +standard, dubbed C++0x. Note that the extensions enabled by this mode +are experimental and may be removed in future releases of GCC. + std=gnu89 C ObjC Conform to the ISO 1990 C standard with GNU extensions @@ -786,7 +983,7 @@ Deprecated in favor of -std=gnu99 std=iso9899:1990 C ObjC -Deprecated in favor of -std=c89 +Conform to the ISO 1990 C standard std=iso9899:199409 C ObjC @@ -794,11 +991,11 @@ Conform to the ISO 1990 C standard as amended in 1994 std=iso9899:1999 C ObjC -Deprecated in favor of -std=c99 +Conform to the ISO 1999 C standard std=iso9899:199x C ObjC -Deprecated in favor of -std=c99 +Deprecated in favor of -std=iso9899:1999 traditional-cpp C ObjC C++ ObjC++ @@ -813,7 +1010,7 @@ C ObjC C++ ObjC++ Do not predefine system-specific and GCC-specific macros v -C ObjC C++ ObjC++ +Common C ObjC C++ ObjC++ Enable verbose output w