diff options
Diffstat (limited to 'gcc/c-family/c.opt')
-rw-r--r-- | gcc/c-family/c.opt | 1060 |
1 files changed, 1060 insertions, 0 deletions
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt new file mode 100644 index 0000000..01d6428 --- /dev/null +++ b/gcc/c-family/c.opt @@ -0,0 +1,1060 @@ +; Options for the C, ObjC, C++ and ObjC++ front ends. +; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 +; 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 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 COPYING3. If not see +; <http://www.gnu.org/licenses/>. + +; See the GCC internals manual for a description of this file's format. + +; 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<question>=<answer> Assert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question> + +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<macro>[=<val>] Define a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1 + +E +C ObjC C++ ObjC++ Undocumented + +F +C ObjC C++ ObjC++ Joined Separate +-F <dir> Add <dir> 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 <dir> Add <dir> to the end of the main include path + +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 <file> 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 <target> Add a MAKE-quoted target + +MT +C ObjC C++ ObjC++ Joined Separate +-MT <target> Add an unquoted target + +P +C ObjC C++ ObjC++ +Do not generate #line directives + +U +C ObjC C++ ObjC++ Joined Separate +-U<macro> Undefine <macro> + +Wabi +C ObjC C++ ObjC++ LTO Var(warn_abi) Warning +Warn about things that will change when compiling with an ABI-compliant compiler + +Wpsabi +C ObjC C++ ObjC++ LTO 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++ 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 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++ Var(warn_cast_qual) Warning +Warn about casts which discard qualifiers + +Wchar-subscripts +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++ Warning +Warn about possibly nested block comments, and C++ comments spanning more than one physical line + +Wcomments +C ObjC C++ ObjC++ Warning +Synonym for -Wcomment + +Wconversion +C ObjC C++ ObjC++ Var(warn_conversion) Warning +Warn for implicit type conversions that may change a value + +Wconversion-null +C++ ObjC++ Var(warn_conversion_null) Init(1) Warning +Warn for converting NULL from/to a non-pointer type + +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++ Var(warn_ctor_dtor_privacy) Warning +Warn when all constructors and destructors are private + +Wdeclaration-after-statement +C ObjC Var(warn_declaration_after_statement) Warning +Warn when a declaration is found after a statement + +Wdeprecated +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++ Var(warn_div_by_zero) Init(1) Warning +Warn about compile-time integer division by zero + +Weffc++ +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++ 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 Warning +This switch is deprecated; use -Werror=implicit-function-declaration instead + +Wfloat-equal +C ObjC C++ ObjC++ Var(warn_float_equal) Warning +Warn if testing floating point numbers for equality + +Wformat +C ObjC C++ ObjC++ Warning +Warn about printf/scanf/strftime/strfmon format string anomalies + +Wformat-extra-args +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++ 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++ Var(warn_format_security) Warning +Warn about possible security problems with format functions + +Wformat-y2k +C ObjC C++ ObjC++ Var(warn_format_y2k) Warning +Warn about strftime formats yielding 2-digit years + +Wformat-zero-length +C ObjC Var(warn_format_zero_length) Warning +Warn about zero-length formats + +Wformat= +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++ Var(warn_init_self) Warning +Warn about variables which are initialized to themselves + +Wimplicit +C ObjC Var(warn_implicit) Init(-1) Warning +Warn about implicit declarations + +Wimplicit-function-declaration +C ObjC Var(warn_implicit_function_declaration) Init(-1) Warning +Warn about implicit function declarations + +Wimplicit-int +C ObjC Var(warn_implicit_int) Init(-1) Warning +Warn when a declaration does not specify a type + +Wimport +C ObjC C++ ObjC++ Undocumented + +Wint-to-pointer-cast +C ObjC 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++ Var(warn_invalid_offsetof) Init(1) Warning +Warn about invalid uses of the \"offsetof\" macro + +Winvalid-pch +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++ Var(warn_long_long) Init(-1) Warning +Do not warn about using \"long long\" when -pedantic + +Wmain +C ObjC C++ ObjC++ Var(warn_main) Init(-1) Warning +Warn about suspicious declarations of \"main\" + +Wmissing-braces +C ObjC C++ ObjC++ Var(warn_missing_braces) Warning +Warn about possibly missing braces around initializers + +Wmissing-declarations +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++ 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 Var(warn_missing_prototypes) Warning +Warn about global functions without prototypes + +Wmultichar +C ObjC C++ ObjC++ Warning +Warn about use of multi-character character constants + +Wnested-externs +C ObjC Var(warn_nested_externs) Warning +Warn about \"extern\" declarations not at file scope + +Wnon-template-friend +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++ Var(warn_nonvdtor) Warning +Warn about non-virtual destructors + +Wnonnull +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=<id|nfc|nfkc> Warn about non-normalised Unicode strings + +Wold-style-cast +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 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++ 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++ Var(warn_parentheses) Warning +Warn about possibly missing parentheses + +Wpmf-conversions +C++ ObjC++ Var(warn_pmf2ptr) Init(1) Warning +Warn when converting the type of pointers to member functions + +Wpointer-arith +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++ Var(warn_protocol) Init(1) Warning +Warn if inherited methods are unimplemented + +Wredundant-decls +C ObjC C++ ObjC++ Var(warn_redundant_decls) Warning +Warn about multiple declarations of the same object + +Wreorder +C++ ObjC++ Var(warn_reorder) Warning +Warn when the compiler reorders code + +Wreturn-type +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++ Var(warn_selector) Warning +Warn if a selector has multiple methods + +Wsequence-point +C ObjC C++ ObjC++ Var(warn_sequence_point) Warning +Warn about possible violations of sequence point rules + +Wsign-compare +C ObjC C++ ObjC++ Var(warn_sign_compare) Init(-1) Warning +Warn about signed-unsigned comparisons + +Wsign-promo +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 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++ Var(warn_synth) Warning +Deprecated. This switch has no effect + +Wsystem-headers +C ObjC C++ ObjC++ Warning +; Documented in common.opt + +Wtraditional +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++ Warning +Warn if trigraphs are encountered that might affect the meaning of the program + +Wundeclared-selector +ObjC ObjC++ Var(warn_undeclared_selector) Warning +Warn about @selector()s without previously declared methods + +Wundef +C ObjC C++ ObjC++ Warning +Warn if an undefined macro is used in an #if directive + +Wunknown-pragmas +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++ Warning +Warn about macros defined in the main file that are not used + +Wunused-result +C ObjC C++ ObjC++ Var(warn_unused_result) Init(1) Warning +Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value + +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++ 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 (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? + +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 + +fconstant-string-class= +ObjC ObjC++ Joined +-fconst-string-class=<name> Use class <name> for constant strings + +fdeduce-init-list +C++ ObjC++ Var(flag_deduce_init_list) Init(1) +-fno-deduce-init-list disable deduction of std::initializer_list for a template type parameter from a brace-enclosed initializer-list + +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 + +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=<cset> Convert all strings and character constants to character set <cset> + +fextended-identifiers +C ObjC C++ ObjC++ +Permit universal character names (\\u and \\U) in identifiers + +finput-charset= +C ObjC C++ ObjC++ Joined RejectNegative +-finput-charset=<cset> Specify the default character set for source files + + +fexternal-templates +C++ ObjC++ + +ffor-scope +C++ ObjC++ +Scope of for-init-statement variables is local to the loop + +ffreestanding +C ObjC 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 + +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++ Optimization + +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 + +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 + +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++ + +fnothrow-opt +C++ ObjC++ Optimization Var(flag_nothrow_opt) +Treat a throw() exception specification as noexcept to improve code size + +; 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++ 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++ keywords like \"compl\" and \"xor\" + +foptional-diags +C++ ObjC++ +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 + +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 + +frepo +C++ ObjC++ +Enable automatic template instantiation + +frtti +C++ ObjC++ Optimization +Generate run time type descriptor information + +fshort-double +C ObjC C++ ObjC++ Optimization +Use the same size for double as for float + +fshort-enums +C ObjC C++ ObjC++ Optimization +Use the narrowest integer type possible for enumeration types + +fshort-wchar +C ObjC C++ ObjC++ Optimization +Force the underlying type for \"wchar_t\" to be \"unsigned short\" + +fsigned-bitfields +C ObjC C++ ObjC++ +When \"signed\" or \"unsigned\" is not given make the bitfield signed + +fsigned-char +C ObjC C++ ObjC++ LTO +Make \"char\" signed by default + +fsquangle +C++ ObjC++ + +fstats +C++ ObjC++ +Display statistics accumulated during compilation + +fstrict-enums +C++ ObjC++ Optimization Var(flag_strict_enums) +Assume that values of enumeration type are always within the minimum range of that type + +fstrict-prototype +C++ ObjC++ + +ftabstop= +C ObjC C++ ObjC++ Joined RejectNegative UInteger +-ftabstop=<number> Distance between tab stops for column reporting + +ftemplate-depth- +C++ ObjC++ Joined RejectNegative UInteger Undocumented + +ftemplate-depth= +C++ ObjC++ Joined RejectNegative UInteger +-ftemplate-depth=<number> 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 + +funsigned-char +C ObjC C++ ObjC++ LTO +Make \"char\" unsigned by default + +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 + +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=<cset> Convert all wide strings and character constants to character set <cset> + +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 + +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=<spec-list> Detailed reduced debug info for structs + +idirafter +C ObjC C++ ObjC++ Joined Separate +-idirafter <dir> Add <dir> to the end of the system include path + +imacros +C ObjC C++ ObjC++ Joined Separate +-imacros <file> Accept definition of macros in <file> + +imultilib +C ObjC C++ ObjC++ Joined Separate +-imultilib <dir> Set <dir> to be the multilib include subdirectory + +include +C ObjC C++ ObjC++ Joined Separate +-include <file> Include the contents of <file> before other files + +iprefix +C ObjC C++ ObjC++ Joined Separate +-iprefix <path> Specify <path> as a prefix for next two options + +isysroot +C ObjC C++ ObjC++ Joined Separate +-isysroot <dir> Set <dir> to be the system root directory + +isystem +C ObjC C++ ObjC++ Joined Separate +-isystem <dir> Add <dir> to the start of the system include path + +iquote +C ObjC C++ ObjC++ Joined Separate +-iquote <dir> Add <dir> to the end of the quote include path + +iwithprefix +C ObjC C++ ObjC++ Joined Separate +-iwithprefix <dir> Add <dir> to the end of the system include path + +iwithprefixbefore +C ObjC C++ ObjC++ Joined Separate +-iwithprefixbefore <dir> Add <dir> 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 + +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 + +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=c1x +C ObjC +Conform to the ISO 201X C standard draft (experimental and incomplete support) + +std=c89 +C ObjC +Conform to the ISO 1990 C standard + +std=c90 +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=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=gnu1x +C ObjC +Conform to the ISO 201X C standard draft with GNU extensions (experimental and incomplete support) + +std=gnu89 +C ObjC +Conform to the ISO 1990 C standard with GNU extensions + +std=gnu90 +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 +Conform to the ISO 1990 C standard + +std=iso9899:199409 +C ObjC +Conform to the ISO 1990 C standard as amended in 1994 + +std=iso9899:1999 +C ObjC +Conform to the ISO 1999 C standard + +std=iso9899:199x +C ObjC +Deprecated in favor of -std=iso9899:1999 + +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 +Common 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. |