; Options for the C, ObjC, C++ and ObjC++ front ends. ; Copyright (C) 2003, 2004, 2005, 2006 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, 51 Franklin Street, Fifth Floor, Boston, MA ; 02110-1301, USA. ; 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> ; APPLE LOCAL begin -Wno-#warnings W#warnings C ObjC C++ ObjC++ Enable #warning ; APPLE LOCAL end -Wno-#warnings Wabi C++ ObjC++ Var(warn_abi) Warn about things that will change when compiling with an ABI-compliant compiler Waddress C ObjC C++ ObjC++ Var(warn_address) Warn about suspicious uses of memory addresses Wall C ObjC C++ ObjC++ Enable most warning messages Wassign-intercept ObjC ObjC++ Var(warn_assign_intercept) Warn whenever an Objective-C assignment is being intercepted by the garbage collector Wbad-function-cast C ObjC Var(warn_bad_function_cast) Warn about casting functions to incompatible types Wc++-compat C ObjC Var(warn_cxx_compat) Warn about C constructs that are not in the common subset of C and C++ Wcast-qual C ObjC C++ ObjC++ Var(warn_cast_qual) Warn about casts which discard qualifiers Wchar-subscripts C ObjC C++ ObjC++ Var(warn_char_subscripts) 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++ Var(warn_conversion) Warn about possibly confusing type conversions ; APPLE LOCAL begin mainline ; This is superseded in mainline by Wconversion Wshorten-64-to-32 C ObjC C++ ObjC++ Var(warn_shorten_64_to_32) Warn if a value is implicitly converted from a 64 bit type to a 32 bit type ; APPLE LOCAL end mainline Wctor-dtor-privacy C++ ObjC++ Var(warn_ctor_dtor_privacy) Warn when all constructors and destructors are private Wdeclaration-after-statement C ObjC Var(warn_declaration_after_statement) Warn when a declaration is found after a statement Wdeprecated C++ ObjC++ Var(warn_deprecated) Init(1) Warn about deprecated compiler features ; APPLE LOCAL begin -Wdiscard-qual 4086969 Wdiscard-qual C ObjC Var(warn_discard_qual) Init(1) Warn about discarded qualifiers ; APPLE LOCAL end -Wdiscard-qual 4086969 Wdiv-by-zero C ObjC C++ ObjC++ Var(warn_div_by_zero) Init(1) Warn about compile-time integer division by zero Weffc++ C++ ObjC++ Var(warn_ecpp) Warn about violations of Effective C++ style rules ; APPLE LOCAL begin mainline Wempty-body C ObjC C++ ObjC++ Var(warn_empty_body) Init(-1) Warning Warn about an empty body in an if or else statement ; APPLE LOCAL end mainline 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 ; APPLE LOCAL begin -Wextra-tokens Wextra-tokens C ObjC C++ ObjC++ Warn about extra tokens at the end of prepreprocessor directives ; APPLE LOCAL end -Wextra-tokens Wfloat-equal C ObjC C++ ObjC++ Var(warn_float_equal) 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++ Var(warn_format_extra_args) Warn if passing too many arguments to a function for its format string Wformat-nonliteral C ObjC C++ ObjC++ Var(warn_format_nonliteral) Warn about format strings that are not literals Wformat-security C ObjC C++ ObjC++ Var(warn_format_security) Warn about possible security problems with format functions Wformat-y2k C ObjC C++ ObjC++ Var(warn_format_y2k) Warn about strftime formats yielding 2-digit years Wformat-zero-length C ObjC Var(warn_format_zero_length) Warn about zero-length formats Wformat= C ObjC C++ ObjC++ Joined ; APPLE LOCAL begin -Wfour-char-constants Wfour-char-constants C ObjC C++ ObjC++ Warn about multicharacter constants containing exactly four characters ; APPLE LOCAL end -Wfour-char-constants Winit-self C ObjC C++ ObjC++ Var(warn_init_self) Warn about variables which are initialized to themselves Wimplicit C ObjC C++ ObjC++ Wimplicit-function-declaration C ObjC Var(mesg_implicit_function_declaration) Init(-1) Warn about implicit function declarations Wimplicit-int C ObjC Var(warn_implicit_int) Warn when a declaration does not specify a type Wimport C ObjC C++ ObjC++ Deprecated. This switch has no effect Wint-to-pointer-cast C ObjC Var(warn_int_to_pointer_cast) Init(1) 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) 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++ Var(warn_long_long) Init(1) Do not warn about using \"long long\" when -pedantic Wmain C ObjC Warn about suspicious declarations of \"main\" Wmissing-braces C ObjC C++ ObjC++ Var(warn_missing_braces) Warn about possibly missing braces around initializers Wmissing-declarations C ObjC Var(warn_missing_declarations) Warn about global functions without previous declarations Wmissing-field-initializers C ObjC C++ ObjC++ Var(warn_missing_field_initializers) Init(-1) Warn about missing fields in struct initializers Wmissing-format-attribute C ObjC C++ ObjC++ Var(warn_missing_format_attribute) Warn about functions which might be candidates for format attributes Wmissing-include-dirs C ObjC C++ ObjC++ Warn about user-specified include directories that do not exist Wmissing-prototypes C ObjC Var(warn_missing_prototypes) Warn about global functions without prototypes ; APPLE LOCAL begin -Wmost Wmost C ObjC C++ ObjC++ Like -Wall but without -Wparentheses ; APPLE LOCAL end -Wmost Wmultichar C ObjC C++ ObjC++ Warn about use of multi-character character constants Wnested-externs C ObjC Var(warn_nested_externs) Warn about \"extern\" declarations not at file scope ; APPLE LOCAL begin -Wnewline-eof Wnewline-eof C ObjC C++ ObjC++ Warn about files missing a newline at the end of the file ; APPLE LOCAL end -Wnewline-eof ; APPLE LOCAL begin non lvalue assign Wnon-lvalue-assign C ObjC C++ ObjC++ Var(warn_non_lvalue_assign) Init(1) Warn about assignment to casts and conditional expressions of lvalues ; APPLE LOCAL end non lvalue assign ; APPLE LOCAL begin radar 5376125 Wdirect-ivar-access ObjC ObjC++ Var(warn_direct_ivar_access) Warn about direct access to gc-enabled ivars ; APPLE LOCAL end radar 5376125 Wnon-template-friend C++ ObjC++ Var(warn_nontemplate_friend) Init(1) Warn when non-templatized friend functions are declared within a template Wnon-virtual-dtor C++ ObjC++ Var(warn_nonvdtor) Warn about non-virtual destructors Wnonnull C ObjC Var(warn_nonnull) Warn about NULL being passed to argument slots marked as requiring non-NULL Wnormalized= C ObjC C++ ObjC++ Joined -Wnormalized=<id|nfc|nfkc> Warn about non-normalised Unicode strings Wold-style-cast C++ ObjC++ Var(warn_old_style_cast) Warn if a C-style cast is used in a program Wold-style-definition C ObjC Var(warn_old_style_definition) Warn if an old-style parameter definition is used Woverlength-strings C ObjC C++ ObjC++ Var(warn_overlength_strings) Init(-1) Warn if a string is longer than the maximum portable length specified by the standard Woverloaded-virtual C++ ObjC++ Var(warn_overloaded_virtual) Warn about overloaded virtual function names Woverride-init C ObjC Var(warn_override_init) Init(-1) Warn about overriding initializers without side effects Wparentheses C ObjC C++ ObjC++ Var(warn_parentheses) Warn about possibly missing parentheses Wpmf-conversions C++ ObjC++ Var(warn_pmf2ptr) Init(1) Warn when converting the type of pointers to member functions Wpointer-arith C ObjC C++ ObjC++ Var(warn_pointer_arith) Warn about function pointer arithmetic Wpointer-to-int-cast C ObjC Var(warn_pointer_to_int_cast) Init(1) Warn when a pointer is cast to an integer of a different size Wpragmas C ObjC C++ ObjC++ Var(warn_pragmas) Init(1) Warn about misuses of pragmas Wprotocol ObjC ObjC++ Var(warn_protocol) Init(1) Warn if inherited methods are unimplemented ; APPLE LOCAL begin radar 5172645 Wproperty-assign-default ObjC ObjC++ Var(warn_property_assign_default) Init(1) Warn if no attribute specified on property of pointer to object type (defaulted to assign) ; APPLE LOCAL end radar 5172645 Wredundant-decls C ObjC C++ ObjC++ Var(warn_redundant_decls) Warn about multiple declarations of the same object Wreorder C++ ObjC++ Var(warn_reorder) Warn when the compiler reorders code Wreturn-type C ObjC C++ ObjC++ Var(warn_return_type) Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++) Wselector ObjC ObjC++ Var(warn_selector) Warn if a selector has multiple methods Wsequence-point C ObjC C++ ObjC++ Var(warn_sequence_point) Warn about possible violations of sequence point rules Wsign-compare C ObjC C++ ObjC++ Var(warn_sign_compare) Init(-1) Warn about signed-unsigned comparisons Wsign-promo C++ ObjC++ Var(warn_sign_promo) Warn when overload promotes from unsigned to signed Wstrict-null-sentinel C++ ObjC++ Warn about uncasted NULL used as sentinel Wstrict-prototypes C ObjC Var(warn_strict_prototypes) Warn about unprototyped function declarations Wstrict-selector-match ObjC ObjC++ Var(warn_strict_selector_match) Warn if type signatures of candidate methods do not match exactly Wsynth C++ ObjC++ Var(warn_synth) Warn when synthesis behavior differs from Cfront Wsystem-headers C ObjC C++ ObjC++ Do not suppress warnings from system headers Wtraditional C ObjC Var(warn_traditional) 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++ Var(warn_undeclared_selector) Warn about @selector()s without previously declared methods 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 Wvariadic-macros C ObjC C++ ObjC++ Do not warn about using variadic macros when -pedantic Wwrite-strings C ObjC C++ ObjC++ Var(warn_write_strings) 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) 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 ; APPLE LOCAL begin Altivec 3837840 faltivec C ObjC C++ ObjC++ Var(flag_faltivec) Enable Altivec ; APPLE LOCAL end Altivec 3837840 fasm C ObjC C++ ObjC++ Recognize the \"asm\" keyword ; APPLE LOCAL begin CW asm blocks fasm-blocks C ObjC C++ ObjC++ Handle CW-style assembly blocks fms-asms C ObjC C++ ObjC++ Var(flag_ms_asms) When handling assembly blocks, use MW-style assembly blocks ; APPLE LOCAL end CW asm blocks ; APPLE LOCAL begin -fast or -fastf or -fastcp fast C ObjC C++ ObjC++ Used for c or c++ optimization fastcp C++ ObjC++ Used when C++ specific optimization is needed fastf C ObjC Used when c is generated from NAG fortran ; APPLE LOCAL end -fast or -fastf or -fastcp 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 ; APPLE LOCAL begin ARM structor thunks ; Nonzero if we prefer to clone con/de/structors. Alternative is to ; gen multiple tiny thunk-esque things that call/jump to a unified ; con/de/structor. This is a classic size/speed tradeoff. fclone-structors C++ ObjC++ Var(flag_clone_structors) Factor out certain duplicate code in constructors and destructors ; APPLE LOCAL end ARM structor thunks 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 fdefault-inline C++ ObjC++ Inline member functions by default ; APPLE LOCAL begin disable_typechecking_for_spec_flag fdisable-typechecking-for-spec C C++ Make crossfile type mismatches warnings not errors (for SPEC) ; APPLE LOCAL end disable_typechecking_for_spec_flag 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 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++ 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++ ; APPLE LOCAL begin 5612787 mainline sse4 flax-vector-conversions C ObjC C++ ObjC++ Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types. ; APPLE LOCAL end 5612787 mainline sse4 fms-extensions C ObjC C++ ObjC++ Don't warn about uses of Microsoft extensions fname-mangling-version- C++ ObjC++ Joined fnew-abi C++ ObjC++ ; APPLE LOCAL begin nested functions 4258406 4357979 fnested-functions C ObjC Var(flag_nested_functions) Allow nested functions. ; APPLE LOCAL end nested functions 4258406 4357979 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 ; APPLE LOCAL begin non lvalue assign fnon-lvalue-assign C ObjC C++ ObjC++ Var(flag_non_lvalue_assign) Init(1) Allow assignment to casts and conditional expressions of lvalues ; APPLE LOCAL end non lvalue assign fnonansi-builtins C++ ObjC++ fnonnull-objects C++ ObjC++ ; APPLE LOCAL begin radar 4705250 fobjc-atdefs ObjC ObjC++ Var(flag_objc_atdefs) Init(-1) Allow use of @defs ; APPLE LOCAL end radar 4705250 ; APPLE LOCAL begin objc2 ; 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) Init(-1) Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed ; APPLE LOCAL end objc2 ; APPLE LOCAL begin radar 4590221 fobjc-direct-dispatch ObjC ObjC++ Var(flag_objc_direct_dispatch) Init(-1) Allow fast jumps to the message dispatcher ; APPLE LOCAL end radar 4590221 ; 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 ; APPLE LOCAL begin ARM hybrid objc-2.0 fobjc-legacy-dispatch ObjC ObjC++ Var(flag_objc_legacy_dispatch) Init(-1) Use Objective-C v1 message dispatching ; APPLE LOCAL end ARM hybrid objc-2.0 ; APPLE LOCAL begin radar 2848255 fobjc-zerocost-exceptions ObjC ObjC++ Var(flag_objc_zerocost_exceptions) Init(0) Enable Objective-C zero-cost exception ; APPLE LOCAL end radar 2848255 ; APPLE LOCAL begin objc new property - not for merge to the FSF fobjc-new-property C C++ ObjC ObjC++ Var(flag_objc_new_property) Init(1) Enable Objective-C new property syntax and semantics ; APPLE LOCAL end objc new property - not for merge to the FSF ; APPLE LOCAL begin radar 4810609 fobjc-gc-only ObjC ObjC++ Var(flag_objc_gc_only) Init(0) Program only supprts (GC) in ObjC/ObjC++ programs ; APPLE LOCAL end radar 4810609 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 foperator-names C++ ObjC++ Recognize C++ kewords 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 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 ; APPLE LOCAL begin ss2 fsave-repository= C ObjC C++ ObjC++ Joined Separate ; APPLE LOCAL end ss2 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\" 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=<number> Distance between tab stops for column reporting ftemplate-depth- C++ ObjC++ Joined RejectNegative UInteger -ftemplate-depth-<number> Specify maximum template instantiation depth fthis-is-variable C++ ObjC++ fthreadsafe-statics C++ ObjC++ -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++ 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 ; APPLE LOCAL begin mainline 2007-06-28 ms tinfo compat 4230099 fvisibility-ms-compat C++ ObjC++ Var(flag_visibility_ms_compat) Changes visibility to match Microsoft Visual Studio by default ; APPLE LOCAL end mainline 2007-06-28 ms tinfo compat 4230099 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 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 ; APPLE LOCAL begin ARM iwithsysroot 4917039 iwithsysroot C ObjC C++ ObjC++ Joined Separate -iwithsysroot <dir> Add <sysroot>/<dir> to the start of the system include path ; APPLE LOCAL end ARM iwithsysroot 4917039 lang-asm C Undocumented lang-fortran 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 ; APPLE LOCAL begin radar 5082000 print-objc-ivar-layout ObjC ObjC++ Generate GC ivar layout information ; APPLE LOCAL end radar 5082000 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=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 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 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.