###Driver -CLASSPATHJava Separate Alias(fclasspath=) -all-warningsAda AdaWhy AdaSCIL Alias(Wall) -all-warningsC ObjC C++ ObjC++ Warning Alias(Wall) -all-warningsFortran Alias(Wall) -all-warningsJava Alias(Wall) -ansiC ObjC C++ ObjC++ Alias(ansi) -assembleDriver Alias(S) -assertC ObjC C++ ObjC++ Separate Alias(A) MissingArgError(assertion missing after %qs) -assertFortran Separate Alias(A) -assert=C ObjC C++ ObjC++ Joined Alias(A) MissingArgError(assertion missing after %qs) -assert=Fortran Joined Alias(A) -bootclasspathJava Separate Alias(fbootclasspath=) -classpathJava Separate Alias(fclasspath=) -commentsC ObjC C++ ObjC++ Alias(C) -commentsFortran Alias(C) -comments-in-macrosC ObjC C++ ObjC++ Alias(CC) -comments-in-macrosFortran Alias(CC) -compileDriver Alias(c) -coverageDriver Alias(coverage) -debugCommon Alias(g) -define-macroC ObjC C++ ObjC++ Separate Alias(D) MissingArgError(macro name missing after %qs) -define-macroFortran Separate Alias(D) -define-macro=C ObjC C++ ObjC++ Joined Alias(D) MissingArgError(macro name missing after %qs) -define-macro=Fortran Joined Alias(D) -dependenciesC ObjC C++ ObjC++ Alias(M) -dependenciesFortran Alias(M) -dependenciesJava Alias(M) -dumpC ObjC C++ ObjC++ Separate Alias(d) -dumpCommon Separate Alias(d) -dumpFortran Separate Alias(d) -dump=C ObjC C++ ObjC++ Joined Alias(d) -dump=Common Joined Alias(d) -dump=Fortran Joined Alias(d) -dumpbaseCommon Separate Alias(dumpbase) -dumpdirCommon Separate Alias(dumpdir) -encodingJava Separate Alias(fencoding=) -entryDriver Separate Alias(e) -entry=Driver Joined Alias(e) -extdirsJava Separate Alias(fextdirs=) -extra-warningsCommon Warning Alias(Wextra) -for-assemblerDriver Separate Alias(Xassembler) -for-assembler=Driver JoinedOrMissing Alias(Xassembler) -for-linkerDriver Separate Alias(Xlinker) -for-linker=Driver JoinedOrMissing Alias(Xlinker) -force-linkDriver Separate Alias(u) -force-link=Driver Joined Alias(u) -helpCommon Driver Var(help_flag)Display this information -help=Common Driver Report Joined--help= Display descriptions of a specific class of options. is one or more of optimizers, target, warnings, undocumented, params -imacrosC ObjC C++ ObjC++ Separate Alias(imacros) MissingArgError(missing filename after %qs) -imacros=C ObjC C++ ObjC++ Joined Alias(imacros) MissingArgError(missing filename after %qs) -includeC ObjC C++ ObjC++ Separate Alias(include) MissingArgError(missing filename after %qs) -include-barrierAda AdaWhy AdaSCIL Alias(I, -) -include-barrierC ObjC C++ ObjC++ Alias(I, -) -include-barrierFortran Alias(I, -) -include-directoryAda AdaWhy AdaSCIL Separate Alias(I) -include-directoryC ObjC C++ ObjC++ Separate Alias(I) MissingArgError(missing path after %qs) -include-directoryFortran Separate Alias(I) -include-directoryJava Separate Alias(I) -include-directory-afterC ObjC C++ ObjC++ Separate Alias(idirafter) MissingArgError(missing path after %qs) -include-directory-afterFortran Separate Alias(idirafter) -include-directory-after=C ObjC C++ ObjC++ Joined Alias(idirafter) MissingArgError(missing path after %qs) -include-directory-after=Fortran Joined Alias(idirafter) -include-directory=Ada AdaWhy AdaSCIL Joined Alias(I) -include-directory=C ObjC C++ ObjC++ Joined Alias(I) MissingArgError(missing path after %qs) -include-directory=Fortran Joined Alias(I) -include-directory=Java Joined Alias(I) -include-prefixC ObjC C++ ObjC++ Separate Alias(iprefix) -include-prefixFortran Separate Alias(iprefix) -include-prefix=C ObjC C++ ObjC++ JoinedOrMissing Alias(iprefix) -include-prefix=Fortran JoinedOrMissing Alias(iprefix) -include-with-prefixC ObjC C++ ObjC++ Separate Alias(iwithprefix) -include-with-prefix-afterC ObjC C++ ObjC++ Separate Alias(iwithprefix) -include-with-prefix-after=C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefix) -include-with-prefix-beforeC ObjC C++ ObjC++ Separate Alias(iwithprefixbefore) -include-with-prefix-before=C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefixbefore) -include-with-prefix=C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefix) -include=C ObjC C++ ObjC++ Joined Alias(include) MissingArgError(missing filename after %qs) -languageDriver Separate Alias(x) -language=Driver Joined Alias(x) -library-directoryDriver Separate Alias(L) -library-directory=Driver Joined Alias(L) -no-canonical-prefixesDriver Alias(no-canonical-prefixes) -no-integrated-cppDriver Alias(no-integrated-cpp) -no-line-commandsC ObjC C++ ObjC++ Alias(P) -no-line-commandsFortran Alias(P) -no-standard-includesAda AdaWhy AdaSCIL Alias(nostdinc) -no-standard-includesC ObjC C++ ObjC++ Alias(nostdinc) -no-standard-includesFortran Alias(nostdinc) -no-standard-librariesAda AdaWhy AdaSCIL Alias(nostdlib) -no-standard-librariesDriver Alias(nostdlib) -no-sysroot-suffixDriver Var(no_sysroot_suffix) -no-warningsC ObjC C++ ObjC++ Alias(w) -no-warningsCommon Alias(w) -optimizeCommon Alias(O) -outputC ObjC C++ ObjC++ Separate Alias(o) -outputCommon Driver Separate Alias(o) MissingArgError(missing filename after %qs) -outputFortran Separate Alias(o) -output-class-directoryJava Separate Alias(foutput-class-dir=) -output-class-directory=Java Joined Alias(foutput-class-dir=) -output-pch=C ObjC C++ ObjC++ Joined Separate -output=C ObjC C++ ObjC++ Joined Alias(o) -output=Common Driver Joined Alias(o) MissingArgError(missing filename after %qs) -output=Fortran Joined Alias(o) -paramCommon Separate--param = Set parameter to value. See below for a complete list of parameters -param=Common Joined Alias(-param) -pass-exit-codesDriver Alias(pass-exit-codes) -pedanticC ObjC C++ ObjC++ Alias(pedantic) -pedanticCommon Alias(Wpedantic) -pedantic-errorsCommon Alias(pedantic-errors) -pieDriver Alias(pie) -pipeDriver Alias(pipe) -prefixDriver Separate Alias(B) -prefix=Driver JoinedOrMissing Alias(B) -preprocessC ObjC C++ ObjC++ Undocumented Alias(E) -preprocessDriver Alias(E) -preprocessFortran Undocumented Alias(E) -print-file-nameDriver Separate Alias(print-file-name=) -print-file-name=Driver JoinedOrMissing Alias(print-file-name=) -print-libgcc-file-nameDriver Alias(print-libgcc-file-name) -print-missing-file-dependenciesC ObjC C++ ObjC++ Alias(MG) -print-missing-file-dependenciesFortran Alias(MG) -print-multi-directoryDriver Alias(print-multi-directory) -print-multi-libDriver Alias(print-multi-lib) -print-multi-os-directoryDriver Alias(print-multi-os-directory) -print-multiarchDriver Alias(print-multiarch) -print-prog-nameDriver Separate Alias(print-prog-name=) -print-prog-name=Driver JoinedOrMissing Alias(print-prog-name=) -print-search-dirsDriver Alias(print-search-dirs) -print-sysrootDriver Alias(print-sysroot) -print-sysroot-headers-suffixDriver Alias(print-sysroot-headers-suffix) -profileCommon Alias(p) -resourceJava Separate Alias(fcompile-resource=) -resource=Java Joined Alias(fcompile-resource=) -save-tempsDriver Alias(save-temps) -sharedDriver Alias(shared) -specsDriver Separate Alias(specs=) -specs=Driver Joined Alias(specs=) -staticDriver Alias(static) -symbolicDriver Alias(symbolic) -sysrootDriver Separate Alias(-sysroot=) -sysroot=Driver JoinedOrMissing -target-helpCommon DriverAlias for --help=target -timeDriver Alias(time) -trace-includesC ObjC C++ ObjC++ Alias(H) -trace-includesFortran Alias(H) -traditionalDriver Alias(traditional) -traditional-cppC ObjC C++ ObjC++ Alias(traditional-cpp) -trigraphsC ObjC C++ ObjC++ Alias(trigraphs) -undefine-macroC ObjC C++ ObjC++ Separate Alias(U) MissingArgError(macro name missing after %qs) -undefine-macroFortran Separate Alias(U) -undefine-macro=C ObjC C++ ObjC++ Joined Alias(U) MissingArgError(macro name missing after %qs) -undefine-macro=Fortran Joined Alias(U) -user-dependenciesC ObjC C++ ObjC++ Alias(MM) -user-dependenciesFortran Alias(MM) -user-dependenciesJava Alias(MM) -verboseCommon C ObjC C++ ObjC++ Alias(v) -verboseDriver Alias(v) -verboseFortran Alias(v) -versionCommon Driver -write-dependenciesC ObjC C++ ObjC++ NoDriverArg Separate Alias(MD) MissingArgError(missing filename after %qs) -write-dependenciesFortran NoDriverArg Separate Alias(MD) -write-user-dependenciesC ObjC C++ ObjC++ NoDriverArg Separate Alias(MMD) MissingArgError(missing filename after %qs) -write-user-dependenciesFortran NoDriverArg Separate Alias(MMD) AC ObjC C++ ObjC++ Joined Separate MissingArgError(assertion missing after %qs)-A= Assert the to . Putting '-' before disables the to AFortran Joined Separate BDriver Joined Separate CC ObjC C++ ObjC++Do not discard comments CDriver CFortran CCC ObjC C++ ObjC++Do not discard comments in macro expansions CCFortran CLASSPATHJava Separate Alias(fclasspath=) DC ObjC C++ ObjC++ Joined Separate MissingArgError(macro name missing after %qs)-D[=] Define a with as its value. If just is given, is taken to be 1 DDriver Joined Separate DFortran Joined Separate EC ObjC C++ ObjC++ Undocumented Var(flag_preprocess_only) EDriver EFortran Undocumented EnumName(asm_dialect) Type(enum asm_dialect)Known assembler dialects (for use with the -masm-dialect= option): EnumName(calling_abi) Type(enum calling_abi)Known ABIs (for use with the -mabi= option): EnumName(cmodel) Type(enum cmodel)Known code models (for use with the -mcmodel= option): EnumName(compressed_debug_sections) Type(int) EnumName(cpp_normalize_level) Type(int) UnknownError(argument %qs to %<-Wnormalized%> not recognized) EnumName(diagnostic_color_rule) Type(int) EnumName(diagnostic_prefixing_rule) Type(int) EnumName(excess_precision) Type(enum excess_precision) UnknownError(unknown excess precision style %qs) EnumName(fp_contract_mode) Type(enum fp_contract_mode) UnknownError(unknown floating point contraction style %qs) EnumName(fpmath_unit) Type(enum fpmath_unit)Valid arguments to -mfpmath=: EnumName(gfc_convert) Type(enum gfc_convert) UnknownError(Unrecognized option to endianess value: %qs) EnumName(gfc_fcoarray) Type(enum gfc_fcoarray) UnknownError(Unrecognized option: %qs) EnumName(gfc_init_local_real) Type(enum gfc_init_local_real) UnknownError(Unrecognized option to floating-point init value: %qs) EnumName(ira_algorithm) Type(enum ira_algorithm) UnknownError(unknown IRA algorithm %qs) EnumName(ira_region) Type(enum ira_region) UnknownError(unknown IRA region %qs) EnumName(ivar_visibility) Type(enum ivar_visibility) UnknownError(unrecognized ivar visibility value %qs) EnumName(ix86_align_data) Type(enum ix86_align_data)Known data alignment choices (for use with the -malign-data= option): EnumName(ix86_veclibabi) Type(enum ix86_veclibabi)Known vectorization library ABIs (for use with the -mveclibabi= option): EnumName(lto_partition_model) Type(enum lto_partition_model) UnknownError(unknown LTO partitioning model %qs) EnumName(offload_abi) Type(enum offload_abi) UnknownError(unknown offload ABI %qs) EnumName(pmode) Type(enum pmode)Known address mode (for use with the -maddress-mode= option): EnumName(stack_protector_guard) Type(enum stack_protector_guard)Known stack protector guard (for use with the -mstack-protector-guard= option): EnumName(stack_reuse_level) Type(enum stack_reuse_level) UnknownError(unknown Stack Reuse Level %qs) EnumName(stringop_alg) Type(enum stringop_alg)Valid arguments to -mstringop-strategy=: EnumName(symbol_visibility) Type(enum symbol_visibility) UnknownError(unrecognized visibility value %qs) EnumName(tls_dialect) Type(enum tls_dialect)Known TLS dialects (for use with the -mtls-dialect= option): EnumName(tls_model) Type(enum tls_model) UnknownError(unknown TLS model %qs) EnumName(vect_cost_model) Type(enum vect_cost_model) UnknownError(unknown vectorizer cost model %qs) EnumName(vtv_priority) Type(enum vtv_priority) UnknownError(unknown vtable verify initialization priority %qs) EnumValueEnum(asm_dialect) String(att) Value(ASM_ATT) EnumValueEnum(asm_dialect) String(intel) Value(ASM_INTEL) EnumValueEnum(calling_abi) String(ms) Value(MS_ABI) EnumValueEnum(calling_abi) String(sysv) Value(SYSV_ABI) EnumValueEnum(cmodel) String(32) Value(CM_32) EnumValueEnum(cmodel) String(kernel) Value(CM_KERNEL) EnumValueEnum(cmodel) String(large) Value(CM_LARGE) EnumValueEnum(cmodel) String(medium) Value(CM_MEDIUM) EnumValueEnum(cmodel) String(small) Value(CM_SMALL) EnumValueEnum(compressed_debug_sections) String(none) Value(0) EnumValueEnum(compressed_debug_sections) String(zlib) Value(1) EnumValueEnum(compressed_debug_sections) String(zlib-gnu) Value(2) EnumValueEnum(cpp_normalize_level) String(id) Value(normalized_identifier_C) EnumValueEnum(cpp_normalize_level) String(nfc) Value(normalized_C) EnumValueEnum(cpp_normalize_level) String(nfkc) Value(normalized_KC) EnumValueEnum(cpp_normalize_level) String(none) Value(normalized_none) EnumValueEnum(diagnostic_color_rule) String(always) Value(DIAGNOSTICS_COLOR_YES) EnumValueEnum(diagnostic_color_rule) String(auto) Value(DIAGNOSTICS_COLOR_AUTO) EnumValueEnum(diagnostic_color_rule) String(never) Value(DIAGNOSTICS_COLOR_NO) EnumValueEnum(diagnostic_prefixing_rule) String(every-line) Value(DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE) EnumValueEnum(diagnostic_prefixing_rule) String(once) Value(DIAGNOSTICS_SHOW_PREFIX_ONCE) EnumValueEnum(excess_precision) String(fast) Value(EXCESS_PRECISION_FAST) EnumValueEnum(excess_precision) String(standard) Value(EXCESS_PRECISION_STANDARD) EnumValueEnum(fp_contract_mode) String(fast) Value(FP_CONTRACT_FAST) EnumValueEnum(fp_contract_mode) String(off) Value(FP_CONTRACT_OFF) EnumValueEnum(fp_contract_mode) String(on) Value(FP_CONTRACT_OFF) EnumValueEnum(fpmath_unit) String(387) Value(FPMATH_387) EnumValueEnum(fpmath_unit) String(387+sse) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)}) EnumValueEnum(fpmath_unit) String(387,sse) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)}) EnumValueEnum(fpmath_unit) String(both) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)}) EnumValueEnum(fpmath_unit) String(sse) Value(FPMATH_SSE) EnumValueEnum(fpmath_unit) String(sse+387) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)}) EnumValueEnum(fpmath_unit) String(sse,387) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)}) EnumValueEnum(gfc_convert) String(big-endian) Value(GFC_FLAG_CONVERT_BIG) EnumValueEnum(gfc_convert) String(little-endian) Value(GFC_FLAG_CONVERT_LITTLE) EnumValueEnum(gfc_convert) String(native) Value(GFC_FLAG_CONVERT_NATIVE) EnumValueEnum(gfc_convert) String(swap) Value(GFC_FLAG_CONVERT_SWAP) EnumValueEnum(gfc_fcoarray) String(lib) Value(GFC_FCOARRAY_LIB) EnumValueEnum(gfc_fcoarray) String(none) Value(GFC_FCOARRAY_NONE) EnumValueEnum(gfc_fcoarray) String(single) Value(GFC_FCOARRAY_SINGLE) EnumValueEnum(gfc_init_local_real) String(-inf) Value(GFC_INIT_REAL_NEG_INF) EnumValueEnum(gfc_init_local_real) String(inf) Value(GFC_INIT_REAL_INF) EnumValueEnum(gfc_init_local_real) String(nan) Value(GFC_INIT_REAL_NAN) EnumValueEnum(gfc_init_local_real) String(snan) Value(GFC_INIT_REAL_SNAN) EnumValueEnum(gfc_init_local_real) String(zero) Value(GFC_INIT_REAL_ZERO) EnumValueEnum(ira_algorithm) String(CB) Value(IRA_ALGORITHM_CB) EnumValueEnum(ira_algorithm) String(priority) Value(IRA_ALGORITHM_PRIORITY) EnumValueEnum(ira_region) String(all) Value(IRA_REGION_ALL) EnumValueEnum(ira_region) String(mixed) Value(IRA_REGION_MIXED) EnumValueEnum(ira_region) String(one) Value(IRA_REGION_ONE) EnumValueEnum(ivar_visibility) String(package) Value(IVAR_VISIBILITY_PACKAGE) EnumValueEnum(ivar_visibility) String(private) Value(IVAR_VISIBILITY_PRIVATE) EnumValueEnum(ivar_visibility) String(protected) Value(IVAR_VISIBILITY_PROTECTED) EnumValueEnum(ivar_visibility) String(public) Value(IVAR_VISIBILITY_PUBLIC) EnumValueEnum(ix86_align_data) String(abi) Value(ix86_align_data_type_abi) EnumValueEnum(ix86_align_data) String(cacheline) Value(ix86_align_data_type_cacheline) EnumValueEnum(ix86_align_data) String(compat) Value(ix86_align_data_type_compat) EnumValueEnum(ix86_veclibabi) String(acml) Value(ix86_veclibabi_type_acml) EnumValueEnum(ix86_veclibabi) String(svml) Value(ix86_veclibabi_type_svml) EnumValueEnum(lto_partition_model) String(1to1) Value(LTO_PARTITION_1TO1) EnumValueEnum(lto_partition_model) String(balanced) Value(LTO_PARTITION_BALANCED) EnumValueEnum(lto_partition_model) String(max) Value(LTO_PARTITION_MAX) EnumValueEnum(lto_partition_model) String(none) Value(LTO_PARTITION_NONE) EnumValueEnum(lto_partition_model) String(one) Value(LTO_PARTITION_ONE) EnumValueEnum(offload_abi) String(ilp32) Value(OFFLOAD_ABI_ILP32) EnumValueEnum(offload_abi) String(lp64) Value(OFFLOAD_ABI_LP64) EnumValueEnum(pmode) String(long) Value(PMODE_DI) EnumValueEnum(pmode) String(short) Value(PMODE_SI) EnumValueEnum(stack_protector_guard) String(global) Value(SSP_GLOBAL) EnumValueEnum(stack_protector_guard) String(tls) Value(SSP_TLS) EnumValueEnum(stack_reuse_level) String(all) Value(SR_ALL) EnumValueEnum(stack_reuse_level) String(named_vars) Value(SR_NAMED_VARS) EnumValueEnum(stack_reuse_level) String(none) Value(SR_NONE) EnumValueEnum(stringop_alg) String(byte_loop) Value(loop_1_byte) EnumValueEnum(stringop_alg) String(libcall) Value(libcall) EnumValueEnum(stringop_alg) String(loop) Value(loop) EnumValueEnum(stringop_alg) String(rep_4byte) Value(rep_prefix_4_byte) EnumValueEnum(stringop_alg) String(rep_8byte) Value(rep_prefix_8_byte) EnumValueEnum(stringop_alg) String(rep_byte) Value(rep_prefix_1_byte) EnumValueEnum(stringop_alg) String(unrolled_loop) Value(unrolled_loop) EnumValueEnum(stringop_alg) String(vector_loop) Value(vector_loop) EnumValueEnum(symbol_visibility) String(default) Value(VISIBILITY_DEFAULT) EnumValueEnum(symbol_visibility) String(hidden) Value(VISIBILITY_HIDDEN) EnumValueEnum(symbol_visibility) String(internal) Value(VISIBILITY_INTERNAL) EnumValueEnum(symbol_visibility) String(protected) Value(VISIBILITY_PROTECTED) EnumValueEnum(tls_dialect) String(gnu) Value(TLS_DIALECT_GNU) EnumValueEnum(tls_dialect) String(gnu2) Value(TLS_DIALECT_GNU2) EnumValueEnum(tls_model) String(global-dynamic) Value(TLS_MODEL_GLOBAL_DYNAMIC) EnumValueEnum(tls_model) String(initial-exec) Value(TLS_MODEL_INITIAL_EXEC) EnumValueEnum(tls_model) String(local-dynamic) Value(TLS_MODEL_LOCAL_DYNAMIC) EnumValueEnum(tls_model) String(local-exec) Value(TLS_MODEL_LOCAL_EXEC) EnumValueEnum(vect_cost_model) String(cheap) Value(VECT_COST_MODEL_CHEAP) EnumValueEnum(vect_cost_model) String(dynamic) Value(VECT_COST_MODEL_DYNAMIC) EnumValueEnum(vect_cost_model) String(unlimited) Value(VECT_COST_MODEL_UNLIMITED) EnumValueEnum(vtv_priority) String(none) Value(VTV_NO_PRIORITY) EnumValueEnum(vtv_priority) String(preinit) Value(VTV_PREINIT_PRIORITY) EnumValueEnum(vtv_priority) String(std) Value(VTV_STANDARD_PRIORITY) FDriver C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-F Add to the end of the main framework include path HC ObjC C++ ObjC++Print the name of header files as they are used HFortran HeaderIncludeconfig/i386/i386-opts.h IAda AdaWhy AdaSCIL Joined Separate IC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-I Add to the end of the main include path IFortran Joined Separate IGo Joined Separate IJava Joined Separate JFortran Joined Separate-J Put MODULE files in 'directory' LDriver Joined Separate LGo Joined Separate LanguageAda LanguageAdaSCIL LanguageAdaWhy LanguageC LanguageC++ LanguageFortran LanguageGo LanguageJava LanguageLTO LanguageObjC LanguageObjC++ MC ObjC C++ ObjC++Generate make dependencies MFortran MJava MDC ObjC C++ ObjC++ NoDriverArg Separate MissingArgError(missing filename after %qs)Generate make dependencies and compile MDFortran Separate NoDriverArg MD_Java Undocumented RejectDriver MFC ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs)-MF Write dependency output to the given file MFFortran Joined Separate MFJava Separate MGC ObjC C++ ObjC++Treat missing header files as generated files MGFortran MMC ObjC C++ ObjC++Like -M but ignore system header files MMFortran MMJava MMDC ObjC C++ ObjC++ NoDriverArg Separate MissingArgError(missing filename after %qs)Like -MD but ignore system header files MMDFortran Separate NoDriverArg MMD_Java Undocumented RejectDriver MPC ObjC C++ ObjC++Generate phony targets for all headers MPFortran MPJava MQC ObjC C++ ObjC++ Joined Separate MissingArgError(missing makefile target after %qs)-MQ Add a MAKE-quoted target MQFortran Joined Separate MTC ObjC C++ ObjC++ Joined Separate MissingArgError(missing makefile target after %qs)-MT Add an unquoted target MTFortran Joined Separate MTJava Separate NDriver OCommon JoinedOrMissing Optimization-O Set optimization level to OfastCommon OptimizationOptimize for speed disregarding exact standards compliance OgCommon OptimizationOptimize for debugging experience rather than speed or size OsCommon OptimizationOptimize for space rather than speed PC ObjC C++ ObjC++Do not generate #line directives PFortran QDriver QnDriver Negative(Qy) QyDriver Negative(Qn) RDriver Joined Separate SDriver SourceIncludecpplib.h SourceIncludediagnostic-color.h SourceIncludepretty-print.h TDriver Joined Separate TargetSaveHOST_WIDE_INT x_ix86_isa_flags_explicit TargetSaveHOST_WIDE_INT x_ix86_target_flags_explicit TargetSaveconst char *x_ix86_arch_string TargetSaveconst char *x_ix86_recip_name TargetSaveconst char *x_ix86_tune_ctrl_string TargetSaveconst char *x_ix86_tune_memcpy_strategy TargetSaveconst char *x_ix86_tune_memset_strategy TargetSaveconst char *x_ix86_tune_string TargetSaveenum asm_dialect x_ix86_asm_dialect TargetSaveenum calling_abi x_ix86_abi TargetSaveenum cmodel x_ix86_cmodel TargetSaveenum ix86_veclibabi x_ix86_veclibabi_type TargetSaveenum pmode x_ix86_pmode TargetSaveenum stack_protector_guard x_ix86_stack_protector_guard TargetSaveenum stringop_alg x_ix86_stringop_alg TargetSaveenum tls_dialect x_ix86_tls_dialect TargetSaveint x_ix86_branch_cost TargetSaveint x_ix86_dump_tunes TargetSaveint x_ix86_force_align_arg_pointer TargetSaveint x_ix86_force_drap TargetSaveint x_ix86_incoming_stack_boundary_arg TargetSaveint x_ix86_preferred_stack_boundary_arg TargetSaveint x_ix86_regparm TargetSaveint x_ix86_section_threshold TargetSaveint x_ix86_sse2avx TargetSaveint x_ix86_tune_no_default TargetSaveint x_recip_mask_explicit TargetSaveunsigned char arch TargetSaveunsigned char arch_specified TargetSaveunsigned char branch_cost TargetSaveunsigned char prefetch_sse TargetSaveunsigned char schedule TargetSaveunsigned char tune TargetSaveunsigned char tune_defaulted TargetVariableint recip_mask = RECIP_MASK_DEFAULT TbssDriver Separate Tbss=Driver Joined TdataDriver Separate Tdata=Driver Joined TtextDriver Separate Ttext=Driver Joined UC ObjC C++ ObjC++ Joined Separate MissingArgError(macro name missing after %qs)-U Undefine UFortran Joined Separate VariableHOST_WIDE_INT frame_larger_than_size VariableHOST_WIDE_INT ix86_isa_flags = TARGET_64BIT_DEFAULT | TARGET_SUBTARGET_ISA_DEFAULT VariableHOST_WIDE_INT ix86_isa_flags_explicit VariableHOST_WIDE_INT larger_than_size Variablebool dump_base_name_prefixed = false Variablebool exit_after_options Variablebool flag_dump_all_passed Variablebool flag_opts_finished Variablebool flag_stack_usage_info = false Variablebool flag_warn_unused_result = false Variablebool in_lto_p = false Variablebool use_gnu_debug_info_extensions Variablebool warn_frame_larger_than Variablebool warn_larger_than Variablechar *help_enum_printed Variablechar *help_printed Variableconst char *main_input_basename Variableconst char *main_input_filename Variableenum debug_info_levels debug_info_level = DINFO_LEVEL_NONE Variableenum debug_info_type write_symbols = NO_DEBUG Variableenum debug_struct_file debug_struct_generic[DINFO_USAGE_NUM_ENUMS] = { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY } Variableenum debug_struct_file debug_struct_ordinary[DINFO_USAGE_NUM_ENUMS] = { DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY, DINFO_STRUCT_FILE_ANY } Variableenum stack_check_type flag_stack_check = NO_STACK_CHECK Variableint *param_values Variableint flag_complex_method = 1 Variableint flag_debug_asm Variableint flag_dump_rtl_in_asm Variableint flag_evaluation_order = 0 Variableint flag_gen_aux_info = 0 Variableint flag_generate_lto Variableint flag_generate_offload = 0 Variableint flag_print_asm_name Variableint flag_shlib Variableint ix86_target_flags_explicit Variableint main_input_baselength Variableint optimize Variableint optimize_debug Variableint optimize_fast Variableint optimize_size Variableint recip_mask_explicit Variableint rtl_dump_and_exit Variableint target_flags Variableunsigned int flag_sanitize Variableunsigned int flag_sanitize_recover = SANITIZE_UNDEFINED | SANITIZE_NONDEFAULT | SANITIZE_KERNEL_ADDRESS Variableunsigned int help_columns Variableunsigned int initial_max_fld_align = TARGET_DEFAULT_PACK_STRUCT Variablevoid *flag_instrument_functions_exclude_files Variablevoid *flag_instrument_functions_exclude_functions WCommon RejectNegative Warning Alias(Wextra)This switch is deprecated; use -Wextra instead Wa,Driver JoinedOrMissing WabiC ObjC C++ ObjC++ LTO Var(warn_abi) WarningWarn about things that will change when compiling with an ABI-compliant compiler Wabi-tagC++ ObjC++ Var(warn_abi_tag) WarningWarn if a subobject has an abi_tag attribute that the complete object type does not have Wabi=C ObjC C++ ObjC++ LTO Joined RejectNegative UInteger WarningWarn about things that change between the current -fabi-version and the specified version WaddressC ObjC C++ ObjC++ Var(warn_address) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about suspicious uses of memory addresses Waggregate-returnCommon Var(warn_aggregate_return) WarningWarn about returning structures, unions or arrays Waggressive-loop-optimizationsCommon Var(warn_aggressive_loop_optimizations) Init(1) WarningWarn if a loop with constant number of iterations triggers undefined behavior WaliasingFortran Warning Var(warn_aliasing) LangEnabledBy(Fortran,Wall)Warn about possible aliasing of dummy arguments Walign-commonsFortran Warning Var(warn_align_commons) Init(1)Warn about alignment of COMMON blocks WallAda AdaWhy AdaSCILEnable most warning messages WallC ObjC C++ ObjC++ WarningEnable most warning messages WallFortran WallGo WallJava Wall-deprecationJava Wall-javadocJava WampersandFortran Warning Var(warn_ampersand) LangEnabledBy(Fortran,Wall || Wpedantic)Warn about missing ampersand in continued character constants Warray-boundsCommon Var(warn_array_bounds) WarningWarn if an array is accessed out of bounds Warray-boundsLangEnabledBy(C ObjC C++ ObjC++,Wall) Warray-bounds=Common Joined RejectNegative UInteger Var(warn_array_bounds) WarningWarn if an array is accessed out of bounds Warray-bounds=LangEnabledBy(C ObjC C++ ObjC++,Wall,1,0) Warray-temporariesFortran Warning Var(warn_array_temporaries)Warn about creation of array temporaries Wassert-identifierJava Wassign-interceptObjC ObjC++ Var(warn_assign_intercept) WarningWarn whenever an Objective-C assignment is being intercepted by the garbage collector WattributesCommon Var(warn_attributes) Init(1) WarningWarn about inappropriate attribute usage Wbad-function-castC ObjC Var(warn_bad_function_cast) WarningWarn about casting functions to incompatible types Wbool-compareC ObjC C++ ObjC++ Var(warn_bool_compare) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about boolean expression compared with an integer value different from true/false WboxingJava Wbuiltin-macro-redefinedC ObjC C++ ObjC++ CPP(warn_builtin_macro_redefined) CppReason(CPP_W_BUILTIN_MACRO_REDEFINED) Var(cpp_warn_builtin_macro_redefined) Init(1) WarningWarn when a built-in preprocessor macro is undefined or redefined Wc++-compatC ObjC Var(warn_cxx_compat) CPP(warn_cxx_operator_names) CppReason(CPP_W_CXX_OPERATOR_NAMES) Init(0) WarningWarn about C constructs that are not in the common subset of C and C++ Wc++0x-compatC++ ObjC++ Var(warn_cxx0x_compat) Warning LangEnabledBy(C++ ObjC++,Wall)Deprecated in favor of -Wc++11-compat Wc++11-compatC++ ObjC++ Warning Alias(Wc++0x-compat)Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 2011 Wc++14-compatC++ ObjC++ Var(warn_cxx14_compat) Warning LangEnabledBy(C++ ObjC++,Wall)Warn about C++ constructs whose meaning differs between ISO C++ 2011 and ISO C++ 2014 Wc-binding-typeFortran Var(warn_c_binding_type) Warning LangEnabledBy(Fortran,Wall)Warn if the type of a variable might be not interoperable with C Wc90-c99-compatC ObjC CPP(cpp_warn_c90_c99_compat) CppReason(CPP_W_C90_C99_COMPAT) Var(warn_c90_c99_compat) Init(-1) WarningWarn about features not present in ISO C90, but present in ISO C99 Wc99-c11-compatC ObjC Var(warn_c99_c11_compat) Init(-1) WarningWarn about features not present in ISO C99, but present in ISO C11 Wcast-alignCommon Var(warn_cast_align) WarningWarn about pointer casts which increase alignment Wcast-qualC ObjC C++ ObjC++ Var(warn_cast_qual) WarningWarn about casts which discard qualifiers Wchar-concatJava Wchar-subscriptsC ObjC C++ ObjC++ Var(warn_char_subscripts) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about subscripts whose type is \"char\" Wcharacter-truncationFortran Var(warn_character_truncation) Warning LangEnabledBy(Fortran,Wall)Warn about truncated character expressions WchkpC ObjC C++ ObjC++ Var(warn_chkp) Warning EnabledBy(Wall)Warn about memory access errors found by Pointer Bounds Checker WclobberedC ObjC C++ ObjC++ Var(warn_clobbered) Warning EnabledBy(Wextra)Warn about variables that might be changed by \"longjmp\" or \"vfork\" WcommentC ObjC C++ ObjC++ CPP(warn_comments) CppReason(CPP_W_COMMENTS) Var(cpp_warn_comment) Init(0) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about possibly nested block comments, and C++ comments spanning more than one physical line WcommentsC ObjC C++ ObjC++ Warning Alias(Wcomment)Synonym for -Wcomment Wcompare-realsFortran Warning Var(warn_compare_reals) LangEnabledBy(Fortran,Wextra)Warn about equality comparisons involving REAL or COMPLEX expressions Wcondition-assignJava Wconditionally-supportedC++ ObjC++ Var(warn_conditionally_supported) WarningWarn for conditionally-supported constructs Wconstructor-nameJava WconversionC ObjC C++ ObjC++ Var(warn_conversion) WarningWarn for implicit type conversions that may change a value WconversionFortran Var(warn_conversion) Warning LangEnabledBy(Fortran,Wall) Wconversion-extraFortran Var(warn_conversion_extra) WarningWarn about most implicit conversions Wconversion-nullC++ ObjC++ Var(warn_conversion_null) Init(1) WarningWarn for converting NULL from/to a non-pointer type Wcoverage-mismatchCommon Var(warn_coverage_mismatch) Init(1) WarningWarn in case profiles in -fprofile-use do not match WcppC ObjC C++ ObjC++ CppReason(CPP_W_WARNING_DIRECTIVE) WcppCommon Var(warn_cpp) Init(1) WarningWarn when a #warning directive is encountered Wctor-dtor-privacyC++ ObjC++ Var(warn_ctor_dtor_privacy) WarningWarn when all constructors and destructors are private Wdate-timeC ObjC C++ ObjC++ CPP(warn_date_time) CppReason(CPP_W_DATE_TIME) Var(cpp_warn_date_time) Init(0) WarningWarn about __TIME__, __DATE__ and __TIMESTAMP__ usage Wdate-timeFortran Wdeclaration-after-statementC ObjC Var(warn_declaration_after_statement) Init(-1) WarningWarn when a declaration is found after a statement Wdelete-incompleteC++ ObjC++ Var(warn_delete_incomplete) Init(1) WarningWarn when deleting a pointer to incomplete type Wdelete-non-virtual-dtorC++ ObjC++ Var(warn_delnonvdtor) Warning LangEnabledBy(C++ ObjC++,Wall || Weffc++)Warn about deleting polymorphic objects with non-virtual destructors Wdep-annJava WdeprecatedC C++ ObjC ObjC++ CPP(cpp_warn_deprecated) CppReason(CPP_W_DEPRECATED) Var(warn_deprecated) Init(1) WarningWarn if a deprecated compiler feature, class, method, or field is used WdeprecatedJava Var(warn_deprecated) Wdeprecated-declarationsCommon Var(warn_deprecated_decl) Init(1) WarningWarn about uses of __attribute__((deprecated)) declarations Wdesignated-initC ObjC Var(warn_designated_init) Init(1) WarningWarn about positional initialization of structs requiring designated initializers Wdisabled-optimizationCommon Var(warn_disabled_optimization) WarningWarn when an optimization pass is disabled Wdiscarded-array-qualifiersC ObjC Var(warn_discarded_array_qualifiers) Init(1) WarningWarn if qualifiers on arrays which are pointer targets are discarded Wdiscarded-qualifiersC ObjC Var(warn_discarded_qualifiers) Init(1) WarningWarn if type qualifiers on pointers are discarded WdiscouragedJava Wdiv-by-zeroC ObjC C++ ObjC++ Var(warn_div_by_zero) Init(1) WarningWarn about compile-time integer division by zero Wdouble-promotionC ObjC C++ ObjC++ Var(warn_double_promotion) WarningWarn about implicit conversions from \"float\" to \"double\" Weffc++C++ ObjC++ Var(warn_ecpp) WarningWarn about violations of Effective C++ style rules Wempty-blockJava Wempty-bodyC ObjC C++ ObjC++ Var(warn_empty_body) Warning EnabledBy(Wextra)Warn about an empty body in an if or else statement Wendif-labelsC ObjC C++ ObjC++ CPP(warn_endif_labels) CppReason(CPP_W_ENDIF_LABELS) Var(cpp_warn_endif_labels) Init(1) Warning LangEnabledBy(C ObjC C++ ObjC++,Wpedantic)Warn about stray tokens after #elif and #endif Wenum-compareC ObjC C++ ObjC++ Var(warn_enum_compare) Init(-1) Warning LangEnabledBy(C ObjC,Wall || Wc++-compat)Warn about comparison of different enum types Wenum-identifierJava Wenum-switchJava WerrorC ObjC C++ ObjC++ WerrorCommon Var(warnings_are_errors)Treat all warnings as errors Werror-implicit-function-declarationC ObjC RejectNegative Warning Alias(Werror=, implicit-function-declaration)This switch is deprecated; use -Werror=implicit-function-declaration instead Werror=Common JoinedTreat specified warning as error WextraCommon Var(extra_warnings) WarningPrint extra (possibly unwanted) warnings WextraFortran Warning Wextraneous-semicolonJava Var(flag_extraneous_semicolon)Warn if deprecated empty statements are found WfallthroughJava Wfatal-errorsCommon Var(flag_fatal_errors)Exit on the first error occurred Wfield-hidingJava Wfinal-boundJava WfinallyJava Wfloat-conversionC ObjC C++ ObjC++ Var(warn_float_conversion) LangEnabledBy(C ObjC C++ ObjC++,Wconversion)Warn for implicit type conversions that cause loss of floating point precision Wfloat-equalC ObjC C++ ObjC++ Var(warn_float_equal) WarningWarn if testing floating point numbers for equality WforbiddenJava WformatC ObjC C++ ObjC++ Warning Alias(Wformat=, 1, 0)Warn about printf/scanf/strftime/strfmon format string anomalies Wformat-contains-nulC ObjC C++ ObjC++ Var(warn_format_contains_nul) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 1, 0)Warn about format strings that contain NUL bytes Wformat-extra-argsC ObjC C++ ObjC++ Var(warn_format_extra_args) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 1, 0)Warn if passing too many arguments to a function for its format string Wformat-nonliteralC ObjC C++ ObjC++ Var(warn_format_nonliteral) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)Warn about format strings that are not literals Wformat-securityC ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0)Warn about possible security problems with format functions Wformat-signednessC ObjC C++ ObjC++ Var(warn_format_signedness) WarningWarn about sign differences with format functions Wformat-y2kC ObjC C++ ObjC++ Var(warn_format_y2k) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 2, 0)Warn about strftime formats yielding 2-digit years Wformat-zero-lengthC ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 1, 0)Warn about zero-length formats Wformat=C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0)Warn about printf/scanf/strftime/strfmon format string anomalies Wframe-larger-than=Common RejectNegative Joined UInteger-Wframe-larger-than= Warn if a function's stack frame requires more than bytes Wfree-nonheap-objectCommon Var(warn_free_nonheap_object) Init(1) WarningWarn when attempting to free a non-heap object Wfunction-eliminationFortran Warning Var(warn_function_elimination)Warn about function call elimination WhidingJava Wignored-qualifiersC C++ Var(warn_ignored_qualifiers) Warning EnabledBy(Wextra)Warn whenever type qualifiers are ignored. WimplicitC ObjC Var(warn_implicit) Warning LangEnabledBy(C ObjC,Wall)Warn about implicit declarations Wimplicit-function-declarationC ObjC Var(warn_implicit_function_declaration) Init(-1) Warning LangEnabledBy(C ObjC,Wimplicit)Warn about implicit function declarations Wimplicit-intC ObjC Var(warn_implicit_int) Init(-1) Warning LangEnabledBy(C ObjC,Wimplicit)Warn when a declaration does not specify a type Wimplicit-interfaceFortran Warning Var(warn_implicit_interface)Warn about calls with implicit interface Wimplicit-procedureFortran Warning Var(warn_implicit_procedure)Warn about called procedures not explicitly declared WimportC ObjC C++ ObjC++ Undocumented Ignore Wincompatible-pointer-typesC ObjC Var(warn_incompatible_pointer_types) Init(1) WarningWarn when there is a conversion between pointers that have incompatible types Windirect-staticJava Winherited-variadic-ctorC++ ObjC++ Var(warn_inh_var_ctor) Init(1) WarningWarn about C++11 inheriting constructors when the base has a variadic constructor Winit-selfC ObjC C++ ObjC++ Var(warn_init_self) Warning LangEnabledBy(C++ ObjC++,Wall)Warn about variables which are initialized to themselves WinlineCommon Var(warn_inline) WarningWarn when an inlined function cannot be inlined Wint-conversionC ObjC Var(warn_int_conversion) Init(1) WarningWarn about incompatible integer to pointer and pointer to integer conversions Wint-to-pointer-castC ObjC C++ ObjC++ Var(warn_int_to_pointer_cast) Init(1) WarningWarn when there is a cast to a pointer from an integer of a different size Wintf-annotationJava Wintf-non-inheritedJava Wintrinsic-shadowFortran Warning Var(warn_intrinsic_shadow) LangEnabledBy(Fortran,Wall)Warn if a user-procedure has the same name as an intrinsic Wintrinsics-stdFortran Var(warn_intrinsics_std) Warning LangEnabledBy(Fortran,Wall)Warn on intrinsics not part of the selected standard Winvalid-memory-modelCommon Var(warn_invalid_memory_model) Init(1) WarningWarn when an atomic memory model parameter is known to be outside the valid range. Winvalid-offsetofC++ ObjC++ Var(warn_invalid_offsetof) Init(1) WarningWarn about invalid uses of the \"offsetof\" macro Winvalid-pchC ObjC C++ ObjC++ CPP(warn_invalid_pch) CppReason(CPP_W_INVALID_PCH) Var(cpp_warn_invalid_pch) Init(0) WarningWarn about PCH files that are found but not used WjavadocJava Wjump-misses-initC ObjC Var(warn_jump_misses_init) Warning LangEnabledby(C ObjC,Wc++-compat)Warn when a jump misses a variable initialization Wl,Driver JoinedOrMissing Wlarger-than-Common RejectNegative Joined Warning Undocumented Alias(Wlarger-than=) Wlarger-than=Common RejectNegative Joined UInteger Warning-Wlarger-than= Warn if an object is larger than bytes Wline-truncationFortran Warning Var(warn_line_truncation) LangEnabledBy(Fortran,Wall) Init(-1)Warn about truncated source lines Wliteral-suffixC++ ObjC++ CPP(warn_literal_suffix) CppReason(CPP_W_LITERAL_SUFFIX) Var(cpp_warn_literal_suffix) Init(1) WarningWarn when a string or character literal is followed by a ud-suffix which does not begin with an underscore. Wlocal-hidingJava Wlogical-not-parenthesesC ObjC C++ ObjC++ Var(warn_logical_not_paren) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn when logical not is used on the left hand side operand of a comparison Wlogical-opC ObjC C++ ObjC++ Var(warn_logical_op) Init(0) Warning Warn when a logical operator is suspiciously always evaluating to true or false Wlong-longC ObjC C++ ObjC++ CPP(cpp_warn_long_long) CppReason(CPP_W_LONG_LONG) Var(warn_long_long) Init(-1) Warning LangEnabledBy(C ObjC,Wc90-c99-compat)Do not warn about using \"long long\" when -pedantic WmainC ObjC C++ ObjC++ Var(warn_main) Init(-1) Warning LangEnabledBy(C ObjC,Wall, 2, 0)Warn about suspicious declarations of \"main\" WmainLangEnabledBy(C ObjC C++ ObjC++,Wpedantic, 2, 0) Wmasked-catch-blockJava Wmaybe-uninitializedC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) Wmaybe-uninitializedCommon Var(warn_maybe_uninitialized) Warning EnabledBy(Wuninitialized)Warn about maybe uninitialized automatic variables Wmaybe-uninitializedFortran LangEnabledBy(Fortran,Wall) Wmemset-transposed-argsC ObjC C++ ObjC++ Var(warn_memset_transposed_args) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about suspicious calls to memset where the third argument is constant literal zero and the second is not Wmissing-bracesC ObjC C++ ObjC++ Var(warn_missing_braces) Warning LangEnabledBy(C ObjC,Wall)Warn about possibly missing braces around initializers Wmissing-declarationsC ObjC C++ ObjC++ Var(warn_missing_declarations) WarningWarn about global functions without previous declarations Wmissing-field-initializersC ObjC C++ ObjC++ Var(warn_missing_field_initializers) Warning EnabledBy(Wextra)Warn about missing fields in struct initializers Wmissing-format-attributeC ObjC C++ ObjC++ Alias(Wsuggest-attribute=format) Wmissing-include-dirsC ObjC C++ ObjC++ CPP(warn_missing_include_dirs) CppReason(CPP_W_MISSING_INCLUDE_DIRS) Var(cpp_warn_missing_include_dirs) Init(0) WarningWarn about user-specified include directories that do not exist Wmissing-include-dirsFortran Wmissing-noreturnCommon Alias(Wsuggest-attribute=noreturn) Wmissing-parameter-typeC ObjC Var(warn_missing_parameter_type) Warning EnabledBy(Wextra)Warn about function parameters declared without a type specifier in K&R-style functions Wmissing-prototypesC ObjC Var(warn_missing_prototypes) WarningWarn about global functions without prototypes WmudflapC ObjC C++ ObjC++ Ignore Warn(switch %qs is no longer supported) WmulticharC ObjC C++ ObjC++ CPP(warn_multichar) CppReason(CPP_W_MULTICHAR) Var(cpp_warn_multichar) Init(0) WarningWarn about use of multi-character character constants WnarrowingC ObjC C++ ObjC++ Warning Var(warn_narrowing) Init(-1) LangEnabledBy(C++ ObjC++,Wall || Wc++0x-compat)Warn about narrowing conversions within { } that are ill-formed in C++11 Wnested-externsC ObjC Var(warn_nested_externs) WarningWarn about \"extern\" declarations not at file scope WnlsJava Wno-effect-assignJava WnoexceptC++ ObjC++ Var(warn_noexcept) WarningWarn when a noexcept expression evaluates to false even though the expression can't actually throw Wnon-template-friendC++ ObjC++ Var(warn_nontemplate_friend) Init(1) WarningWarn when non-templatized friend functions are declared within a template Wnon-virtual-dtorC++ ObjC++ Var(warn_nonvdtor) Warning LangEnabledBy(C++ ObjC++,Weffc++)Warn about non-virtual destructors WnonnullC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) WnonnullC ObjC C++ ObjC++ Var(warn_nonnull) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 1,0)Warn about NULL being passed to argument slots marked as requiring non-NULL WnormalizedC ObjC C++ ObjC++ Alias(Wnormalized=,nfc,none) Wnormalized=C ObjC C++ ObjC++ RejectNegative Joined Warning CPP(warn_normalize) CppReason(CPP_W_NORMALIZE) Init(normalized_C) Var(cpp_warn_normalize) Enum(cpp_normalize_level)-Wnormalized= Warn about non-normalised Unicode strings WnullJava WodrCommon Var(warn_odr_violations) Init(1) WarningWarn about some C++ One Definition Rule violations during link time optimization Wold-style-castC++ ObjC++ Var(warn_old_style_cast) WarningWarn if a C-style cast is used in a program Wold-style-declarationC ObjC Var(warn_old_style_declaration) Warning EnabledBy(Wextra)Warn for obsolescent usage in a declaration Wold-style-definitionC ObjC Var(warn_old_style_definition) WarningWarn if an old-style parameter definition is used Wopenmp-simdC C++ Var(warn_openmp_simd) Warning LangEnabledBy(C C++,Wall)Warn if a simd directive is overridden by the vectorizer cost model Wopenmp-simdFortran Wout-of-dateJava Var(flag_newer) Init(1)Warn if .class files are out of date Wover-annJava WoverflowCommon Var(warn_overflow) Init(1) WarningWarn about overflow in arithmetic expressions Woverlength-stringsC ObjC C++ ObjC++ Var(warn_overlength_strings) Warning LangEnabledBy(C ObjC C++ ObjC++,Wpedantic)Warn if a string is longer than the maximum portable length specified by the standard Woverloaded-virtualC++ ObjC++ Var(warn_overloaded_virtual) WarningWarn about overloaded virtual function names Woverride-initC ObjC Var(warn_override_init) Warning EnabledBy(Wextra)Warn about overriding initializers without side effects Wp,Driver JoinedOrMissing WpackedCommon Var(warn_packed) WarningWarn when the packed attribute has no effect on struct layout Wpacked-bitfield-compatC ObjC C++ ObjC++ Var(warn_packed_bitfield_compat) Init(-1) WarningWarn about packed bit-fields whose offset changed in GCC 4.4 WpaddedCommon Var(warn_padded) WarningWarn when padding is required to align structure members Wparam-assignJava WparenthesesC ObjC C++ ObjC++ Var(warn_parentheses) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about possibly missing parentheses WpedanticC ObjC C++ ObjC++ CPP(cpp_pedantic) CppReason(CPP_W_PEDANTIC) Warning WpedanticCommon Var(pedantic) Init(0) WarningIssue warnings needed for strict compliance to the standard WpedanticFortran Wpkg-default-methodJava Wpmf-conversionsC++ ObjC++ Var(warn_pmf2ptr) Init(1) WarningWarn when converting the type of pointers to member functions Wpointer-arithC ObjC C++ ObjC++ Var(warn_pointer_arith) Warning LangEnabledBy(C ObjC C++ ObjC++,Wpedantic)Warn about function pointer arithmetic Wpointer-signC ObjC Var(warn_pointer_sign) Warning LangEnabledBy(C ObjC,Wall || Wpedantic)Warn when a pointer differs in signedness in an assignment Wpointer-to-int-castC ObjC Var(warn_pointer_to_int_cast) Init(1) WarningWarn when a pointer is cast to an integer of a different size WpragmasC ObjC C++ ObjC++ Var(warn_pragmas) Init(1) WarningWarn about misuses of pragmas Wproperty-assign-defaultObjC ObjC++ Var(warn_property_assign_default) Init(1) WarningWarn if a property for an Objective-C object has no assign semantics specified WprotocolObjC ObjC++ Var(warn_protocol) Init(1) WarningWarn if inherited methods are unimplemented WpsabiC ObjC C++ ObjC++ LTO Var(warn_psabi) Init(1) Undocumented LangEnabledBy(C ObjC C++ ObjC++,Wabi) WrawJava Wreal-q-constantFortran Warning Var(warn_real_q_constant) LangEnabledBy(Fortran,Wall)Warn about real-literal-constants with 'q' exponent-letter Wrealloc-lhsFortran Warning Var(warn_realloc_lhs) LangEnabledBy(Fortran,Wrealloc-lhs-all)Warn when a left-hand-side array variable is reallocated Wrealloc-lhs-allFortran Warning Var(warn_realloc_lhs_all)Warn when a left-hand-side variable is reallocated Wredundant-declsC ObjC C++ ObjC++ Var(warn_redundant_decls) WarningWarn about multiple declarations of the same object Wredundant-modifiersJava Var(flag_redundant)Warn if modifiers are specified when not necessary WreorderC++ ObjC++ Var(warn_reorder) Warning LangEnabledBy(C++ ObjC++,Wall)Warn when the compiler reorders code Wreturn-local-addrCommon Var(warn_return_local_addr) Init(1) WarningWarn about returning a pointer/reference to a local or temporary variable. Wreturn-typeC ObjC C++ ObjC++ Var(warn_return_type) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++) Wreturn-typeFortran Warning LangEnabledBy(Fortran,Wall) WselectorObjC ObjC++ Var(warn_selector) WarningWarn if a selector has multiple methods Wsequence-pointC ObjC C++ ObjC++ Var(warn_sequence_point) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about possible violations of sequence point rules WserialJava WshadowCommon Var(warn_shadow) WarningWarn when one local variable shadows another Wshadow-ivarObjC ObjC++ Var(warn_shadow_ivar) EnabledBy(Wshadow) Init(1) WarningWarn if a local declaration hides an instance variable Wshift-count-negativeC ObjC C++ ObjC++ Var(warn_shift_count_negative) Init(1) WarningWarn if shift count is negative Wshift-count-overflowC ObjC C++ ObjC++ Var(warn_shift_count_overflow) Init(1) WarningWarn if shift count >= width of type Wsign-compareC ObjC C++ ObjC++ EnabledBy(Wextra) Wsign-compareC ObjC C++ ObjC++ Var(warn_sign_compare) Warning LangEnabledBy(C++ ObjC++,Wall)Warn about signed-unsigned comparisons Wsign-conversionC ObjC C++ ObjC++ Var(warn_sign_conversion) LangEnabledBy(C ObjC,Wconversion)Warn for implicit type conversions between signed and unsigned integers Wsign-promoC++ ObjC++ Var(warn_sign_promo) WarningWarn when overload promotes from unsigned to signed Wsized-deallocationC++ ObjC++ Var(warn_sized_deallocation) Warning EnabledBy(Wextra)Warn about missing sized deallocation functions Wsizeof-array-argumentC ObjC C++ ObjC++ Var(warn_sizeof_array_argument) Warning Init(1)Warn when sizeof is applied on a parameter declared as an array Wsizeof-pointer-memaccessC ObjC C++ ObjC++ Var(warn_sizeof_pointer_memaccess) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about suspicious length parameters to certain string functions if the argument uses sizeof Wspecial-param-hidingJava Wstack-protectorCommon Var(warn_stack_protect) WarningWarn when not issuing stack smashing protection for some reason Wstack-usage=Common Joined RejectNegative UInteger Var(warn_stack_usage) Init(-1) WarningWarn if stack usage might be larger than specified amount Wstatic-accessJava Wstatic-receiverJava Wstrict-aliasingCommon WarningWarn about code which might break strict aliasing rules Wstrict-aliasing=C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall, 3, 0) Wstrict-aliasing=Common Joined RejectNegative UInteger Var(warn_strict_aliasing) WarningWarn about code which might break strict aliasing rules Wstrict-null-sentinelC++ ObjC++ Warning Var(warn_strict_null_sentinel)Warn about uncasted NULL used as sentinel Wstrict-overflowCommon WarningWarn about optimizations that assume that signed overflow is undefined Wstrict-overflow=C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) Wstrict-overflow=Common Joined RejectNegative UInteger Var(warn_strict_overflow) WarningWarn about optimizations that assume that signed overflow is undefined Wstrict-prototypesC ObjC Var(warn_strict_prototypes) WarningWarn about unprototyped function declarations Wstrict-selector-matchObjC ObjC++ Var(warn_strict_selector_match) WarningWarn if type signatures of candidate methods do not match exactly Wsuggest-attribute=constCommon Var(warn_suggest_attribute_const) WarningWarn about functions which might be candidates for __attribute__((const)) Wsuggest-attribute=formatC ObjC C++ ObjC++ Var(warn_suggest_attribute_format) WarningWarn about functions which might be candidates for format attributes Wsuggest-attribute=noreturnCommon Var(warn_suggest_attribute_noreturn) WarningWarn about functions which might be candidates for __attribute__((noreturn)) Wsuggest-attribute=pureCommon Var(warn_suggest_attribute_pure) WarningWarn about functions which might be candidates for __attribute__((pure)) Wsuggest-final-methodsCommon Var(warn_suggest_final_methods) WarningWarn about C++ virtual methods where adding final keyword would improve code quality Wsuggest-final-typesCommon Var(warn_suggest_final_types) WarningWarn about C++ polymorphic types where adding final keyword would improve code quality Wsuggest-overrideC++ ObjC++ Var(warn_override) WarningSuggest that the override keyword be used when the declaration of a virtualfunction overrides another. WsuppressJava WsurprisingFortran Warning Var(warn_surprising) LangEnabledBy(Fortran,Wall)Warn about \"suspicious\" constructs WswitchC ObjC C++ ObjC++ Var(warn_switch) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn about enumerated switches, with no default, missing a case Wswitch-boolC ObjC C++ ObjC++ Var(warn_switch_bool) Warning Init(1)Warn about switches with boolean controlling expression Wswitch-defaultC ObjC C++ ObjC++ Var(warn_switch_default) WarningWarn about enumerated switches missing a \"default:\" statement Wswitch-enumC ObjC C++ ObjC++ Var(warn_switch_enum) WarningWarn about all enumerated switches missing a specific case Wsync-nandC C++ Var(warn_sync_nand) Init(1) WarningWarn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used WsynthC++ ObjC++ Var(warn_synth) WarningDeprecated. This switch has no effect Wsynthetic-accessJava Wsystem-headersC ObjC C++ ObjC++ Warning Wsystem-headersCommon Var(warn_system_headers) WarningDo not suppress warnings from system headers WtabsFortran Warning Var(warn_tabs) LangEnabledBy(Fortran,Wall || Wpedantic)Permit nonconforming uses of the tab character Wtarget-lifetimeFortran Warning Var(warn_target_lifetime) LangEnabledBy(Fortran,Wall)Warn if the pointer in a pointer assignment might outlive its target WtasksJava WtraditionalC ObjC CPP(cpp_warn_traditional) CppReason(CPP_W_TRADITIONAL) Var(warn_traditional) Init(0) WarningWarn about features not present in traditional C Wtraditional-conversionC ObjC Var(warn_traditional_conversion) WarningWarn of prototypes causing type conversions different from what would happen in the absence of prototype WtrampolinesCommon Var(warn_trampolines) WarningWarn whenever a trampoline is generated WtrigraphsC ObjC C++ ObjC++ CPP(warn_trigraphs) CppReason(CPP_W_TRIGRAPHS) Var(cpp_warn_trigraphs) Init(2) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn if trigraphs are encountered that might affect the meaning of the program Wtype-hidingJava Wtype-limitsCommon Var(warn_type_limits) Warning EnabledBy(Wextra)Warn if a comparison is always true or always false due to the limited range of the data type WuncheckJava Wundeclared-selectorObjC ObjC++ Var(warn_undeclared_selector) WarningWarn about @selector()s without previously declared methods WundefC ObjC C++ ObjC++ CPP(warn_undef) CppReason(CPP_W_UNDEF) Var(cpp_warn_undef) Init(0) WarningWarn if an undefined macro is used in an #if directive WunderflowFortran Warning Var(warn_underflow) Init(1)Warn about underflow of numerical constant expressions WuninitializedC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) WuninitializedCommon Var(warn_uninitialized) Warning EnabledBy(Wextra)Warn about uninitialized automatic variables WuninitializedFortran LangEnabledBy(Fortran,Wall) Wunknown-pragmasC ObjC C++ ObjC++ Warning Var(warn_unknown_pragmas) LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0)Warn about unrecognized pragmas Wunnecessary-elseJava Wunqualified-fieldJava Wunreachable-codeCommon IgnoreDoes nothing. Preserved for backward compatibility. Wunsafe-loop-optimizationsCommon Var(warn_unsafe_loop_optimizations) WarningWarn if the loop cannot be optimized due to nontrivial assumptions. Wunsuffixed-float-constantsC ObjC Var(warn_unsuffixed_float_constants) WarningWarn about unsuffixed float constants WunusedC ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) WunusedCommon Var(warn_unused) Init(0) WarningEnable all -Wunused- warnings WunusedJava WunusedLangEnabledBy(Fortran,Wall) Wunused-argumentJava Wunused-but-set-parameterCommon Var(warn_unused_but_set_parameter) Warning EnabledBy(Wunused && Wextra)Warn when a function parameter is only set, otherwise unused Wunused-but-set-variableCommon Var(warn_unused_but_set_variable) Warning EnabledBy(Wunused)Warn when a variable is only set, otherwise unused Wunused-dummy-argumentFortran Warning Var(warn_unused_dummy_argument) LangEnabledBy(Fortran,Wall)Warn about unused dummy arguments. Wunused-functionCommon Var(warn_unused_function) Warning EnabledBy(Wunused)Warn when a function is unused Wunused-importJava Wunused-labelCommon Var(warn_unused_label) Warning EnabledBy(Wunused)Warn when a label is unused Wunused-labelJava Wunused-localJava Wunused-local-typedefsC ObjC C++ ObjC++ Var(warn_unused_local_typedefs) Warning EnabledBy(Wunused)Warn when typedefs locally defined in a function are not used Wunused-macrosC ObjC C++ ObjC++ CppReason(CPP_W_UNUSED_MACROS) Var(cpp_warn_unused_macros) WarningWarn about macros defined in the main file that are not used Wunused-parameterCommon Var(warn_unused_parameter) Warning EnabledBy(Wunused && Wextra)Warn when a function parameter is unused Wunused-privateJava Wunused-resultC ObjC C++ ObjC++ Var(warn_unused_result) Init(1) WarningWarn if a caller of a function, marked with attribute warn_unused_result, does not use its return value Wunused-thrownJava Wunused-valueCommon Var(warn_unused_value) Warning EnabledBy(Wunused)Warn when an expression value is unused Wunused-variableCommon Var(warn_unused_variable) Warning EnabledBy(Wunused)Warn when a variable is unused Wuse-without-onlyFortran Var(warn_use_without_only) WarningWarn about USE statements that have no ONLY qualifier Wuseless-castC++ ObjC++ Var(warn_useless_cast) WarningWarn about useless casts Wuseless-type-checkJava WvarargsC ObjC C++ ObjC++ Warning Var(warn_varargs) Init(1)Warn about questionable usage of the macros used to retrieve variable arguments Wvarargs-castJava Wvariadic-macrosC ObjC C++ ObjC++ CPP(warn_variadic_macros) CppReason(CPP_W_VARIADIC_MACROS) Var(cpp_warn_variadic_macros) Init(0) Warning LangEnabledBy(C ObjC C++ ObjC++,Wpedantic || Wtraditional)Warn about using variadic macros Wvector-operation-performanceCommon Var(warn_vector_operation_performance) WarningWarn when a vector operation is compiled outside the SIMD Wvirtual-move-assignC++ ObjC++ Var(warn_virtual_move_assign) Warning Init(1)Warn if a virtual base has a non-trivial move assignment operator WvlaC ObjC C++ ObjC++ Var(warn_vla) Init(-1) WarningWarn if a variable length array is used Wvolatile-register-varC ObjC C++ ObjC++ Var(warn_volatile_register_var) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall)Warn when a register variable is declared volatile Wwarning-tokenJava Wwrite-stringsC ObjC C++ ObjC++ Var(warn_write_strings) WarningIn 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. Wzero-as-null-pointer-constantC++ ObjC++ Var(warn_zero_as_null_pointer_constant) WarningWarn when a literal '0' is used as null pointer WzerotripFortran Warning Var(warn_zerotrip) LangEnabledBy(Fortran,Wall)Warn about zero-trip DO loops XassemblerDriver Separate XlinkerDriver Separate XpreprocessorDriver Separate ZDriver ansiC ObjC C++ ObjC++A synonym for -std=c89 (for C) or -std=c++98 (for C++) aux-infoCommon Separate Var(aux_info_file_name)-aux-info Emit declaration information into aux-info=Common Joined Alias(aux-info) auxbaseCommon Separate RejectDriver Var(aux_base_name) auxbase-stripCommon Separate RejectDriver bootclasspathJava Separate Alias(fbootclasspath=) cDriver classpathJava Separate Alias(fclasspath=) coverageDriver cppFortran Negative(nocpp)Enable preprocessing cpp=Fortran Joined Negative(nocpp) Undocumented NoDWARFRecord dC ObjC C++ ObjC++ Joined dCommon Joined-d Enable dumps from specific passes of the compiler dFortran Joined dJava Separate SeparateAlias Alias(foutput-class-dir=) dumpbaseCommon Separate Var(dump_base_name)-dumpbase Set the file basename to be used for dumps dumpdirCommon Separate Var(dump_dir_name)-dumpdir Set the directory name to be used for dumps dumpmachineDriver dumpspecsDriver dumpversionDriver eDriver Joined Separate encodingJava Separate Alias(fencoding=) export-dynamicDriver Undocumented extdirsDriver Separate fCLASSPATH=Java JoinedOrMissing RejectNegative Alias(fclasspath=)--CLASSPATH Deprecated; use --classpath instead fPICCommon Report Var(flag_pic,2) Negative(fPIE)Generate position-independent code if possible (large mode) fPIECommon Report Var(flag_pie,2) Negative(fpic)Generate position-independent code for executables if possible (large mode) fRTS=Ada AdaWhy AdaSCIL Joined RejectNegativeSelect the runtime fabi-compat-version=C++ ObjC++ Joined RejectNegative UInteger Var(flag_abi_compat_version) Init(-1)The version of the C++ ABI used for -Wabi warnings and link compatibility aliases fabi-version=Common Joined RejectNegative UInteger Var(flag_abi_version) Init(0)The version of the C++ ABI in use faccess-controlC++ ObjC++ Var(flag_access_control) Init(1)Enforce class member access control semantics fada-spec-parent=C ObjC C++ ObjC++ RejectNegative Joined Var(ada_specs_parent)-fada-spec-parent=unit Dump Ada specs as child units of given parent faggressive-function-eliminationFortran Var(flag_aggressive_function_elimination)Eliminate multiple function invokations also for impure functions faggressive-loop-optimizationsCommon Report Var(flag_aggressive_loop_optimizations) Optimization Init(1) Aggressively optimize loops using language constraints falign-commonsFortran Var(flag_align_commons) Init(1)Enable alignment of COMMON blocks falign-functionsCommon Report Var(align_functions,0) Optimization UIntegerAlign the start of functions falign-functions=Common RejectNegative Joined UInteger Var(align_functions) falign-jumpsCommon Report Var(align_jumps,0) Optimization UIntegerAlign labels which are only reached by jumping falign-jumps=Common RejectNegative Joined UInteger Var(align_jumps) falign-labelsCommon Report Var(align_labels,0) Optimization UIntegerAlign all labels falign-labels=Common RejectNegative Joined UInteger Var(align_labels) falign-loopsCommon Report Var(align_loops,0) Optimization UIntegerAlign the start of loops falign-loops=Common RejectNegative Joined UInteger Var(align_loops) fall-intrinsicsFortran RejectNegative Var(flag_all_intrinsics)All intrinsics procedures are available regardless of selected standard fall-virtualC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fallow-leading-underscoreFortran Undocumented Var(flag_allow_leading_underscore) fallow-parameterless-variadic-functionsC ObjC Var(flag_allow_parameterless_variadic_functions)Allow variadic functions without named parameter falt-external-templatesC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fargument-aliasCommon IgnoreDoes nothing. Preserved for backward compatibility. fargument-noaliasCommon IgnoreDoes nothing. Preserved for backward compatibility. fargument-noalias-anythingCommon IgnoreDoes nothing. Preserved for backward compatibility. fargument-noalias-globalCommon IgnoreDoes nothing. Preserved for backward compatibility. fasan-shadow-offset=Common Joined RejectNegative Var(common_deferred_options) Defer-fasan-shadow-offset= Use custom shadow memory offset. fasmC ObjC C++ ObjC++ Var(flag_no_asm, 0)Recognize the \"asm\" keyword fassertJava Var(flag_assert) Init(1)Permit the use of the assert keyword fassociative-mathCommon Report Var(flag_associative_math) SetByCombined OptimizationAllow optimization for floating-point arithmetic which may change theresult of the operation due to rounding. fassume-compiledJava fassume-compiled=Java JoinedOrMissing fasynchronous-unwind-tablesCommon Report Var(flag_asynchronous_unwind_tables) OptimizationGenerate unwind tables that are exact at each instruction boundary fauto-inc-decCommon Report Var(flag_auto_inc_dec) Init(1) OptimizationGenerate auto-inc/dec instructions fauto-profileCommon Report Var(flag_auto_profile)Use sample profile information for call graph node weights. The defaultprofile file is fbdata.afdo in 'pwd'. fauto-profile=Common Joined RejectNegative Var(auto_profile_file)Use sample profile information for call graph node weights. The profilefile is specified in the argument. fautomaticFortran Var(flag_automatic) Init(1)Do not treat local variables and COMMON blocks as if they were named in SAVE statements faux-classpathJava Separate RejectNegative Undocumented fbackslashFortran Var(flag_backslash)Specify that backslash in string introduces an escape character fbacktraceFortran Var(flag_backtrace) Init(1)Produce a backtrace when a runtime error is encountered fblas-matmul-limit=Fortran RejectNegative Joined UInteger Var(flag_blas_matmul_limit) Init(30)-fblas-matmul-limit= Size of the smallest matrix for which matmul will use BLAS fbootclasspath=Java JoinedOrMissing RejectNegative--bootclasspath= Replace system path fbootstrap-classesJava Var(flag_bootstrap_classes)Generated should be loaded by bootstrap loader fbounds-checkCommon Report Var(flag_bounds_check)Generate code to check bounds before indexing arrays fbranch-count-regCommon Report Var(flag_branch_on_count_reg) OptimizationReplace add, compare, branch with branch on count register fbranch-probabilitiesCommon Report Var(flag_branch_probabilities) OptimizationUse profiling information for branch probabilities fbranch-target-load-optimizeCommon Report Var(flag_branch_target_load_optimize) OptimizationPerform branch target load optimization before prologue / epilogue threading fbranch-target-load-optimize2Common Report Var(flag_branch_target_load_optimize2) OptimizationPerform branch target load optimization after prologue / epilogue threading fbtr-bb-exclusiveCommon Report Var(flag_btr_bb_exclusive) OptimizationRestrict target load migration not to re-use registers in any basic block fbuilding-libgccC ObjC C++ ObjC++ Undocumented Var(flag_building_libgcc) fbuiltinC ObjC C++ ObjC++ Var(flag_no_builtin, 0)Recognize built-in functions fbuiltin-C ObjC C++ ObjC++ Joined fcall-saved-Common Joined RejectNegative Var(common_deferred_options) Defer-fcall-saved- Mark as being preserved across functions fcall-used-Common Joined RejectNegative Var(common_deferred_options) Defer-fcall-used- Mark as being corrupted by function calls fcaller-savesCommon Report Var(flag_caller_saves) OptimizationSave registers around function calls fcanonical-system-headersC ObjC C++ ObjC++Where shorter, use canonicalized paths to systems headers. fcheck-array-temporariesFortranProduce a warning at runtime if a array temporary has been created for a procedure argument fcheck-data-depsCommon Report Var(flag_check_data_deps)Compare the results of several data dependence analyzers. fcheck-newCommon Var(flag_check_new)Check the return value of new in C++ fcheck-pointer-boundsC ObjC C++ ObjC++ LTO Report Var(flag_check_pointer_bounds)Add Pointer Bounds Checker instrumentation. fchkp-* flags are used tocontrol instrumentation. Currently available for C, C++ and ObjC. fcheck-referencesJava Var(flag_check_references)Generate checks for references to NULL fcheck=Fortran RejectNegative JoinedOrMissing-fcheck=[...] Specify which runtime checks are to be performed fchkp-check-incomplete-typeC ObjC C++ ObjC++ LTO Report Var(flag_chkp_incomplete_type) Init(1)Generate pointer bounds checks for variables with incomplete type fchkp-check-readC ObjC C++ ObjC++ LTO Report Var(flag_chkp_check_read) Init(1)Generate checks for all read accesses to memory. fchkp-check-writeC ObjC C++ ObjC++ LTO Report Var(flag_chkp_check_write) Init(1)Generate checks for all write accesses to memory. fchkp-first-field-has-own-boundsC ObjC C++ ObjC++ LTO RejectNegative Report Var(flag_chkp_first_field_has_own_bounds)Forces Pointer Bounds Checker to use narrowed bounds for address of the firstfield in the structure. By default pointer to the first field has the samebounds as pointer to the whole structure. fchkp-instrument-callsC ObjC C++ ObjC++ LTO Report Var(flag_chkp_instrument_calls) Init(1)Generate bounds passing for calls. fchkp-instrument-marked-onlyC ObjC C++ ObjC++ LTO Report Var(flag_chkp_instrument_marked_only) Init(0)Instrument only functions marked with bnd_instrument attribute. fchkp-narrow-boundsC ObjC C++ ObjC++ LTO Report Var(flag_chkp_narrow_bounds) Init(1)Control how Pointer Bounds Checker handle pointers to object fields. Whennarrowing is on, field bounds are used. Otherwise full object bounds are used. fchkp-narrow-to-innermost-arrayC ObjC C++ ObjC++ LTO RejectNegative Report Var(flag_chkp_narrow_to_innermost_arrray)Forces Pointer Bounds Checker to use bounds of the innermost arrays in case ofnested static arryas access. By default outermost array is used. fchkp-optimizeC ObjC C++ ObjC++ LTO Report Var(flag_chkp_optimize) Init(-1)Allow Pointer Bounds Checker optimizations. By default allowedon optimization levels >0. fchkp-store-boundsC ObjC C++ ObjC++ LTO Report Var(flag_chkp_store_bounds) Init(1)Generate bounds stores for pointer writes. fchkp-treat-zero-dynamic-size-as-infiniteC ObjC C++ ObjC++ LTO Report Var(flag_chkp_zero_dynamic_size_as_infinite) Init(0)With this option zero size obtained dynamically for objects withincomplete type will be treated as infinite. fchkp-use-fast-string-functionsC ObjC C++ ObjC++ LTO Report Var(flag_chkp_use_fast_string_functions) Init(0)Allow to use *_nobnd versions of string functions by Pointer Bounds Checker. fchkp-use-nochk-string-functionsC ObjC C++ ObjC++ LTO Report Var(flag_chkp_use_nochk_string_functions) Init(0)Allow to use *_nochk versions of string functions by Pointer Bounds Checker. fchkp-use-static-boundsC ObjC C++ ObjC++ LTO Report Var(flag_chkp_use_static_bounds) Init(1)Use statically initialized variable for vars bounds instead ofgenerating them each time it is required. fchkp-use-static-const-boundsC ObjC C++ ObjC++ LTO Report Var(flag_chkp_use_static_const_bounds) Init(-1)Use statically initialized variable for constant bounds instead ofgenerating them each time it is required. fchkp-use-wrappersC ObjC C++ ObjC++ LTO Report Var(flag_chkp_use_wrappers) Init(1)Transform instrumented builtin calls into calls to wrappers. fchkp-zero-input-bounds-for-mainC ObjC C++ ObjC++ LTO Report Var(flag_chkp_zero_input_bounds_for_main) Init(0)Use zero bounds for all incoming arguments in 'main' function. It helps wheninstrumented binaries are used with legacy libs. fcilkplusC ObjC C++ ObjC++ LTO Report Var(flag_cilkplus) Init(0)Enable Cilk Plus fclasspath=Java JoinedOrMissing RejectNegative--classpath= Set class path fcoarray=Fortran RejectNegative Joined Enum(gfc_fcoarray) Var(flag_coarray) Init(GFC_FCOARRAY_NONE)-fcoarray= Specify which coarray parallelization should be used fcombine-stack-adjustmentsCommon Report Var(flag_combine_stack_adjustments) OptimizationLooks for opportunities to reduce stack adjustments and stack references. fcommonCommon Report Var(flag_no_common,0)Do not put uninitialized globals in the common section fcompare-debugDriver fcompare-debug-secondCommon Driver RejectNegative Var(flag_compare_debug)Run only the second compilation of -fcompare-debug fcompare-debug=Common Driver JoinedOrMissing RejectNegative Var(flag_compare_debug_opt)-fcompare-debug[=] Compile with and without e.g. -gtoggle, and compare the final-insns dump fcompare-elimCommon Report Var(flag_compare_elim_after_reload) OptimizationPerform comparison elimination after register allocation has finished fcompile-resource=Java Joined RejectNegative fcond-mismatchC ObjC C++ ObjC++Allow the arguments of the '?' operator to have different types fconserve-spaceC++ ObjC++ Var(flag_conserve_space)Does nothing. Preserved for backward compatibility. fconserve-stackCommon Var(flag_conserve_stack) OptimizationDo not perform optimizations increasing noticeably stack usage fconstant-string-class=ObjC ObjC++ Joined MissingArgError(no class name specified with %qs)-fconst-string-class= Use class for constant strings fconstexpr-depth=C++ ObjC++ Joined RejectNegative UInteger Var(max_constexpr_depth) Init(512)-fconstexpr-depth= Specify maximum constexpr recursion depth fconvert=Fortran RejectNegative Joined Enum(gfc_convert) Var(flag_convert) Init(GFC_FLAG_CONVERT_NATIVE)-fconvert= The endianness used for unformatted files. fcprop-registersCommon Report Var(flag_cprop_registers) OptimizationPerform a register copy-propagation optimization pass fcray-pointerFortran Var(flag_cray_pointer)Use the Cray Pointer extension fcrossjumpingCommon Report Var(flag_crossjumping) OptimizationPerform cross-jumping optimization fcse-follow-jumpsCommon Report Var(flag_cse_follow_jumps) OptimizationWhen running CSE, follow jumps to their targets fcse-skip-blocksCommon IgnoreDoes nothing. Preserved for backward compatibility. fcx-fortran-rulesCommon Report Var(flag_cx_fortran_rules) OptimizationComplex multiplication and division follow Fortran rules fcx-limited-rangeCommon Report Var(flag_cx_limited_range) Optimization SetByCombinedOmit range reduction step when performing complex division fd-lines-as-codeFortran RejectNegativeIgnore 'D' in column one in fixed form fd-lines-as-commentsFortran RejectNegativeTreat lines with 'D' in column one as comments fdata-sectionsCommon Report Var(flag_data_sections)Place data items into their own section fdbg-cnt-listCommon Report Var(common_deferred_options) DeferList all available debugging counters with their limits and counts. fdbg-cnt=Common RejectNegative Joined Var(common_deferred_options) Defer-fdbg-cnt=:[,:,...] Set the debug counter limit. fdceCommon Var(flag_dce) Init(1) OptimizationUse the RTL dead code elimination pass fdebug-cppC ObjC C++ ObjC++Emit debug annotations during preprocessing fdebug-prefix-map=Common Joined RejectNegative Var(common_deferred_options) DeferMap one directory name to another in debug information fdebug-types-sectionCommon Report Var(flag_debug_types_section) Init(0)Output .debug_types section when using DWARF v4 debuginfo. fdeclone-ctor-dtorC++ ObjC++ Var(flag_declone_ctor_dtor) Init(-1)Factor complex constructors and destructors to favor space over speed fdeduce-init-listC++ ObjC++ Var(flag_deduce_init_list) Init(0)-fdeduce-init-list enable deduction of std::initializer_list for a template type parameter from a brace-enclosed initializer-list fdefault-double-8Fortran Var(flag_default_double)Set the default double precision kind to an 8 byte wide type fdefault-inlineC++ ObjC++ IgnoreDoes nothing. Preserved for backward compatibility. fdefault-integer-8Fortran Var(flag_default_integer)Set the default integer kind to an 8 byte wide type fdefault-real-8Fortran Var(flag_default_real)Set the default real kind to an 8 byte wide type fdefer-popCommon Report Var(flag_defer_pop) OptimizationDefer popping functions args from stack until later fdelayed-branchCommon Report Var(flag_delayed_branch) OptimizationAttempt to fill delay slots of branch instructions fdelete-dead-exceptionsCommon Report Var(flag_delete_dead_exceptions) Init(0) OptimizationDelete dead instructions that may throw exceptions fdelete-null-pointer-checksCommon Report Var(flag_delete_null_pointer_checks) Init(1) OptimizationDelete useless null pointer checks fdevirtualizeCommon Report Var(flag_devirtualize) OptimizationTry to convert virtual calls to direct ones. fdevirtualize-at-ltransCommon Report Var(flag_ltrans_devirtualize)Stream extra data to support more aggressive devirtualization in LTO local transformation mode fdevirtualize-speculativelyCommon Report Var(flag_devirtualize_speculatively) OptimizationPerform speculative devirtualization fdiagnostics-colorCommon Alias(fdiagnostics-color=,always,never) fdiagnostics-color=Driver Common Joined RejectNegative Var(flag_diagnostics_show_color) Enum(diagnostic_color_rule) Init(DIAGNOSTICS_COLOR_NO)-fdiagnostics-color=[never|always|auto] Colorize diagnostics fdiagnostics-show-caretCommon Var(flag_diagnostics_show_caret) Init(1)Show the source line with a caret indicating the column fdiagnostics-show-location=Common Joined RejectNegative Enum(diagnostic_prefixing_rule)-fdiagnostics-show-location=[once|every-line] How often to emit source location at the beginning of line-wrapped diagnostics fdiagnostics-show-optionCommon Var(flag_diagnostics_show_option) Init(1)Amend appropriate diagnostic messages with the command line option that controls them fdirectives-onlyC ObjC C++ ObjC++Preprocess directives only. fdisable-Common Joined RejectNegative Var(common_deferred_options) Defer-fdisable-[tree|rtl|ipa]-=range1+range2 disables an optimization pass fdisable-assertionsJava fdisable-assertions=Java JoinedOrMissing fdollar-okFortran Var(flag_dollar_ok)Allow dollar signs in entity names fdollars-in-identifiersC ObjC C++ ObjC++Permit '$' as an identifier character fdseCommon Var(flag_dse) Init(1) OptimizationUse the RTL dead store elimination pass fdump-Common Joined RejectNegative Var(common_deferred_options) Defer-fdump- Dump various compiler internals to a file fdump-ada-specC ObjC C++ ObjC++ RejectNegative Var(flag_dump_ada_spec)Write all declarations as Ada code transitively fdump-ada-spec-slimC ObjC C++ ObjC++ RejectNegative Var(flag_dump_ada_spec_slim)Write all declarations as Ada code for the given file only fdump-coreFortran IgnoreDoes nothing. Preserved for backward compatibility. fdump-final-insnsDriver RejectNegative fdump-final-insns=Common RejectNegative Joined Var(flag_dump_final_insns)-fdump-final-insns=filename Dump to filename the insns at the end of translation fdump-fortran-optimizedFortran Var(flag_dump_fortran_optimized)Display the code tree after front end optimization fdump-fortran-originalFortran Var(flag_dump_fortran_original)Display the code tree after parsing fdump-go-spec=Common RejectNegative Joined Var(flag_dump_go_spec)-fdump-go-spec=filename Write all declarations to file as Go code fdump-noaddrCommon Report Var(flag_dump_noaddr)Suppress output of addresses in debugging dumps fdump-parse-treeFortran Alias(fdump-fortran-original)Display the code tree after parsing; deprecated option fdump-passesCommon Var(flag_dump_passes) Init(0)Dump optimization passes fdump-unnumberedCommon Report Var(flag_dump_unnumbered)Suppress output of instruction numbers, line number notes and addresses in debugging dumps fdump-unnumbered-linksCommon Report Var(flag_dump_unnumbered_links)Suppress output of previous and next insn numbers in debugging dumps fdwarf2-cfi-asmCommon Report Var(flag_dwarf2_cfi_asm) Init(HAVE_GAS_CFI_DIRECTIVE)Enable CFI tables via GAS assembler directives. fearly-inliningCommon Report Var(flag_early_inlining) Init(1) OptimizationPerform early inlining felide-constructorsC++ ObjC++ Var(flag_elide_constructors) Init(1) feliminate-dwarf2-dupsCommon Report Var(flag_eliminate_dwarf2_dups)Perform DWARF2 duplicate elimination feliminate-unused-debug-symbolsCommon Report Var(flag_debug_only_used_symbols)Perform unused symbol elimination in debug info feliminate-unused-debug-typesCommon Report Var(flag_eliminate_unused_debug_types) Init(1)Perform unused type elimination in debug info femit-class-debug-alwaysCommon Report Var(flag_emit_class_debug_always) Init(0)Do not suppress C++ class debug information. femit-class-fileJava Var(flag_emit_class_files)Output a class file femit-class-filesJava Var(flag_emit_class_files)Alias for -femit-class-file femit-struct-debug-baseonlyC ObjC C++ ObjC++-femit-struct-debug-baseonly Aggressive reduced debug info for structs femit-struct-debug-detailed=C ObjC C++ ObjC++ Joined-femit-struct-debug-detailed= Detailed reduced debug info for structs femit-struct-debug-reducedC ObjC C++ ObjC++-femit-struct-debug-reduced Conservative reduced debug info for structs fenable-Common Joined RejectNegative Var(common_deferred_options) Defer-fenable-[tree|rtl|ipa]-=range1+range2 enables an optimization pass fenable-assertionsJava fenable-assertions=Java JoinedOrMissing fencoding=Java Joined RejectNegative--encoding= Choose input encoding (defaults from your locale) fenforce-eh-specsC++ ObjC++ Var(flag_enforce_eh_specs) Init(1)Generate code to check exception specifications fenum-int-equivC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fexceptionsCommon Report Var(flag_exceptions) OptimizationEnable exception handling fexcess-precision=Common Joined RejectNegative Enum(excess_precision) Var(flag_excess_precision_cmdline) Init(EXCESS_PRECISION_DEFAULT)-fexcess-precision=[fast|standard] Specify handling of excess floating-point precision fexec-charset=C ObjC C++ ObjC++ Joined RejectNegative-fexec-charset= Convert all strings and character constants to character set fexpensive-optimizationsCommon Report Var(flag_expensive_optimizations) OptimizationPerform a number of minor, expensive optimizations fext-numeric-literalsC++ ObjC++ Interpret imaginary, fixed-point, or other gnu number suffix as the correspondingnumber literal rather than a user-defined number literal. fextdirs=Java Joined RejectNegative--extdirs= Set the extension directory path fextended-identifiersC ObjC C++ ObjC++Permit universal character names (\\u and \\U) in identifiers fextern-tls-initC++ ObjC++ Var(flag_extern_tls_init) Init(-1)Support dynamic initialization of thread-local variables in a different translation unit fexternal-blasFortran Var(flag_external_blas)Specify that an external BLAS library should be used for matmul calls on large-size arrays fexternal-templatesC++ ObjC++ Ignore Warn(switch %qs is no longer supported) ff2cFortran Var(flag_f2c)Use f2c calling convention ffast-mathCommon ffat-lto-objectsCommon Var(flag_fat_lto_objects)Output lto objects containing both the intermediate language and binary output. ffilelist-fileJava Var(flag_filelist_file)Input file is a file with a list of filenames to compile ffinite-math-onlyCommon Report Var(flag_finite_math_only) Optimization SetByCombinedAssume no NaNs or infinities are generated ffixed-Common Joined RejectNegative Var(common_deferred_options) Defer-ffixed- Mark as being unavailable to the compiler ffixed-formFortran RejectNegativeAssume that the source file is fixed form ffixed-line-length-Fortran RejectNegative Joined UInteger Var(flag_fixed_line_length) Init(72)-ffixed-line-length- Use n as character line width in fixed mode ffixed-line-length-noneFortran RejectNegative Var(flag_fixed_line_length,0)Allow arbitrary character line width in fixed mode ffloat-storeCommon Report Var(flag_float_store) OptimizationDon't allocate floats and doubles in extended-precision registers ffor-scopeC++ ObjC++ Var(flag_new_for_scope) Init(1)Scope of for-init-statement variables is local to the loop fforce-addrCommon IgnoreDoes nothing. Preserved for backward compatibility. fforce-classes-archive-checkJava Var(flag_force_classes_archive_check)Always check for non gcj generated classes archives fforward-propagateCommon Report Var(flag_forward_propagate) OptimizationPerform a forward propagation pass on RTL ffp-contract=Common Joined RejectNegative Enum(fp_contract_mode) Var(flag_fp_contract_mode) Init(FP_CONTRACT_FAST) Optimization-ffp-contract=[off|on|fast] Perform floating-point expression contraction. ffpe-summary=Fortran RejectNegative JoinedOrMissing-ffpe-summary=[...] Print summary of floating point exceptions ffpe-trap=Fortran RejectNegative JoinedOrMissing-ffpe-trap=[...] Stop on following floating point exceptions ffree-formFortran RejectNegativeAssume that the source file is free form ffree-line-length-Fortran RejectNegative Joined UInteger Var(flag_free_line_length) Init(132)-ffree-line-length- Use n as character line width in free mode ffree-line-length-noneFortran RejectNegative Var(flag_free_line_length,0)Allow arbitrary character line width in free mode ffreestandingC ObjC C++ ObjC++Do not assume that standard C libraries and \"main\" exist ffriend-injectionC++ ObjC++ Var(flag_friend_injection)Inject friend functions into enclosing namespace ffrontend-optimizeFortran Var(flag_frontend_optimize) Init(-1)Enable front end optimization ffunction-cseCommon Report Var(flag_no_function_cse,0) OptimizationAllow function addresses to be held in registers ffunction-sectionsCommon Report Var(flag_function_sections)Place each function into its own section fgcseCommon Report Var(flag_gcse) OptimizationPerform global common subexpression elimination fgcse-after-reloadCommon Report Var(flag_gcse_after_reload) OptimizationPerform global common subexpression elimination after register allocationhas finished fgcse-lasCommon Report Var(flag_gcse_las) Init(0) OptimizationPerform redundant load after store elimination in global common subexpressionelimination fgcse-lmCommon Report Var(flag_gcse_lm) Init(1) OptimizationPerform enhanced load motion during global common subexpression elimination fgcse-smCommon Report Var(flag_gcse_sm) Init(0) OptimizationPerform store motion after global common subexpression elimination fgnu-keywordsC++ ObjC++ Var(flag_no_gnu_keywords, 0)Recognize GNU-defined keywords fgnu-runtimeObjC ObjC++ LTO Report RejectNegative Var(flag_next_runtime,0) Init(NEXT_OBJC_RUNTIME)Generate code for GNU runtime environment fgnu-tmCommon Report Var(flag_tm)Enable support for GNU transactional memory fgnu-uniqueCommon Report Var(flag_gnu_unique) Init(1)Use STB_GNU_UNIQUE if supported by the assembler fgnu89-inlineC ObjC Var(flag_gnu89_inline) Init(-1)Use traditional GNU semantics for inline functions fgo-check-divide-overflowGo Var(go_check_divide_overflow) Init(1)Add explicit checks for division overflow in INT_MIN / -1 fgo-check-divide-zeroGo Var(go_check_divide_zero) Init(1)Add explicit checks for division by zero fgo-dump-Go Joined RejectNegative-fgo-dump- Dump Go frontend internal information fgo-optimize-Go Joined RejectNegative-fgo-optimize- Turn on optimization passes in the frontend fgo-pkgpath=Go Joined RejectNegative-fgo-pkgpath= Set Go package path fgo-prefix=Go Joined RejectNegative-fgo-prefix= Set package-specific prefix for exported Go names fgo-relative-import-path=Go Joined RejectNegative-fgo-relative-import-path= Treat a relative import as relative to path fgraphiteCommon Report Var(flag_graphite) OptimizationEnable in and out of Graphite representation fgraphite-identityCommon Report Var(flag_graphite_identity) OptimizationEnable Graphite Identity transformation fguess-branch-probabilityCommon Report Var(flag_guess_branch_prob) OptimizationEnable guessing of branch probabilities fguiding-declsC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fhandle-exceptionsC++ ObjC++ Optimization Alias(fexceptions) Warn({-fhandle-exceptions has been renamed -fexceptions (and is now on by default)}) fhash-synchronizationJava Var(flag_hash_synchronization)Assume the runtime uses a hash table to map an object to its synchronization structure fhelpCommon Driver Alias(-help) fhelp=Common Driver Joined Alias(-help=) fhoist-adjacent-loadsCommon Report Var(flag_hoist_adjacent_loads) OptimizationEnable hoisting adjacent loads to encourage generating conditional moveinstructions fhonor-stdC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fhostedC ObjCAssume normal C execution environment fhuge-objectsC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fidentCommon Report Var(flag_no_ident,0)Process #ident directives fif-conversionCommon Report Var(flag_if_conversion) OptimizationPerform conversion of conditional jumps to branchless equivalents fif-conversion2Common Report Var(flag_if_conversion2) OptimizationPerform conversion of conditional jumps to conditional execution fimplement-inlinesC++ ObjC++ Var(flag_implement_inlines) Init(1)Export functions even if they can be inlined fimplicit-inline-templatesC++ ObjC++ Var(flag_implicit_inline_templates) Init(1)Emit implicit instantiations of inline templates fimplicit-noneFortran Var(flag_implicit_none)Specify that no implicit typing is allowed, unless overridden by explicit IMPLICIT statements fimplicit-templatesC++ ObjC++ Var(flag_implicit_templates) Init(1)Emit implicit instantiations of templates findirect-classesJava Var(flag_indirect_classes) Init(1)Generate instances of Class at runtime findirect-dispatchJava Var(flag_indirect_dispatch)Use offset tables for virtual method calls findirect-inliningCommon Report Var(flag_indirect_inlining) OptimizationPerform indirect inlining finhibit-size-directiveCommon Report Var(flag_inhibit_size_directive)Do not generate .size directives finit-character=Fortran RejectNegative Joined UInteger-finit-character= Initialize local character variables to ASCII value n finit-integer=Fortran RejectNegative Joined-finit-integer= Initialize local integer variables to n finit-local-zeroFortranInitialize local variables to zero (from g77) finit-logical=Fortran RejectNegative Joined-finit-logical= Initialize local logical variables finit-real=Fortran RejectNegative ToLower Joined Enum(gfc_init_local_real) Var(flag_init_real) Init(GFC_INIT_REAL_OFF)-finit-real= Initialize local real variables finlineCommon Report Var(flag_no_inline,0) Init(0) OptimizationEnable inlining of function declared \"inline\", disabling disables all inlining finline-atomicsCommon Report Var(flag_inline_atomics) Init(1) OptimizationInline __atomic operations when a lock free instruction sequence is available. finline-functionsCommon Report Var(flag_inline_functions) OptimizationIntegrate functions not declared \"inline\" into their callers when profitable finline-functionsJava finline-functions-called-onceCommon Report Var(flag_inline_functions_called_once) OptimizationIntegrate functions only required by their single caller finline-limit-Common RejectNegative Joined Alias(finline-limit=) finline-limit=Common RejectNegative Joined UInteger-finline-limit= Limit the size of inlined functions to finline-small-functionsCommon Report Var(flag_inline_small_functions) OptimizationIntegrate functions into their callers when code size is known not to grow finput-charset=C ObjC C++ ObjC++ Joined RejectNegative-finput-charset= Specify the default character set for source files finstrument-functionsCommon Report Var(flag_instrument_function_entry_exit)Instrument function entry and exit with profiling calls finstrument-functions-exclude-file-list=Common RejectNegative Joined-finstrument-functions-exclude-file-list=filename,... Do not instrument functions listed in files finstrument-functions-exclude-function-list=Common RejectNegative Joined-finstrument-functions-exclude-function-list=name,... Do not instrument listed functions finteger-4-integer-8Fortran RejectNegative Var(flag_integer4_kind,8)Interpret any INTEGER(4) as an INTEGER(8) fintrinsic-modules-pathFortran RejectNegative SeparateSpecify where to find the compiled intrinsic modules fintrinsic-modules-path=Fortran RejectNegative JoinedSpecify where to find the compiled intrinsic modules fipa-cpCommon Report Var(flag_ipa_cp) OptimizationPerform interprocedural constant propagation fipa-cp-alignmentCommon Report Var(flag_ipa_cp_alignment) OptimizationPerform alignment discovery and propagation to make Interprocedural constant propagation stronger fipa-cp-cloneCommon Report Var(flag_ipa_cp_clone) OptimizationPerform cloning to make Interprocedural constant propagation stronger fipa-icfCommon Report Var(flag_ipa_icf) OptimizationPerform Identical Code Folding for functions and read-only variables fipa-icf-functionsCommon Report Var(flag_ipa_icf_functions) OptimizationPerform Identical Code Folding for functions fipa-icf-variablesCommon Report Var(flag_ipa_icf_variables)Perform Identical Code Folding for variables fipa-matrix-reorgCommon IgnoreDoes nothing. Preserved for backward compatibility. fipa-profileCommon Report Var(flag_ipa_profile) Init(0) OptimizationPerform interprocedural profile propagation fipa-ptaCommon Report Var(flag_ipa_pta) Init(0) OptimizationPerform interprocedural points-to analysis fipa-pure-constCommon Report Var(flag_ipa_pure_const) Init(0) OptimizationDiscover pure and const functions fipa-raCommon Report Var(flag_ipa_ra) OptimizationUse caller save register across calls if possible fipa-referenceCommon Report Var(flag_ipa_reference) Init(0) OptimizationDiscover readonly and non addressable static variables fipa-sraCommon Report Var(flag_ipa_sra) Init(0) OptimizationPerform interprocedural reduction of aggregates fipa-struct-reorgCommon IgnoreDoes nothing. Preserved for backward compatibility. fira-algorithm=Common Joined RejectNegative Enum(ira_algorithm) Var(flag_ira_algorithm) Init(IRA_ALGORITHM_CB) Optimization-fira-algorithm=[CB|priority] Set the used IRA algorithm fira-hoist-pressureCommon Report Var(flag_ira_hoist_pressure) Init(1) OptimizationUse IRA based register pressure calculationin RTL hoist optimizations. fira-loop-pressureCommon Report Var(flag_ira_loop_pressure) OptimizationUse IRA based register pressure calculationin RTL loop optimizations. fira-region=Common Joined RejectNegative Enum(ira_region) Var(flag_ira_region) Init(IRA_REGION_AUTODETECT) Optimization-fira-region=[one|all|mixed] Set regions for IRA fira-share-save-slotsCommon Report Var(flag_ira_share_save_slots) Init(1) OptimizationShare slots for saving different hard registers. fira-share-spill-slotsCommon Report Var(flag_ira_share_spill_slots) Init(1) OptimizationShare stack slots for spilled pseudo-registers. fira-verbose=Common RejectNegative Joined UInteger Var(flag_ira_verbose) Init(5)-fira-verbose= Control IRA's level of diagnostic messages. fisolate-erroneous-paths-attributeCommon Report Var(flag_isolate_erroneous_paths_attribute) OptimizationDetect paths that trigger erroneous or undefined behavior due a null valuebeing used in a way forbidden by a returns_nonnull or nonnullattribute. Isolate those paths from the main control flow and turn thestatement with erroneous or undefined behavior into a trap. fisolate-erroneous-paths-dereferenceCommon Report Var(flag_isolate_erroneous_paths_dereference) OptimizationDetect paths that trigger erroneous or undefined behavior due todereferencing a null pointer. Isolate those paths from the main controlflow and turn the statement with erroneous or undefined behavior into a trap. fivar-visibility=ObjC ObjC++ Joined RejectNegative Enum(ivar_visibility) Var(default_ivar_visibility) Init(IVAR_VISIBILITY_PROTECTED)-fvisibility=[private|protected|public|package] Set the default symbol visibility fivoptsCommon Report Var(flag_ivopts) Init(1) OptimizationOptimize induction variables on trees fjniJava Var(flag_jni)Assume native functions are implemented using JNI fjump-tablesCommon Var(flag_jump_tables) Init(1) OptimizationUse jump tables for sufficiently large switch statements fkeep-inline-dllexportC C++ ObjC ObjC++ Var(flag_keep_inline_dllexport) Init(1) Report Condition(TARGET_DLLIMPORT_DECL_ATTRIBUTES)Don't emit dllexported inline functions unless needed fkeep-inline-functionsCommon Report Var(flag_keep_inline_functions)Generate code for functions even if they are fully inlined fkeep-static-constsCommon Report Var(flag_keep_static_consts) Init(1)Emit static const variables even if they are not used flabels-okC++ ObjC++ Ignore Warn(switch %qs is no longer supported) flax-vector-conversionsC ObjC C++ ObjC++ Var(flag_lax_vector_conversions)Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types. fleading-underscoreCommon Report Var(flag_leading_underscore) Init(-1)Give external symbols a leading underscore flifetime-dseCommon Report Var(flag_lifetime_dse) Init(1) OptimizationTell DSE that the storage for a C++ object is dead when the constructorstarts and when the destructor finishes. flive-range-shrinkageCommon Report Var(flag_live_range_shrinkage) Init(0) OptimizationRelief of register pressure through live range shrinkage flocal-ivarsObjC ObjC++ Var(flag_local_ivars) Init(1)Allow access to instance variables as if they were local declarations within instance method implementations. floop-blockCommon Report Var(flag_loop_block) OptimizationEnable Loop Blocking transformation floop-flattenCommon IgnoreDoes nothing. Preserved for backward compatibility. floop-interchangeCommon Report Var(flag_loop_interchange) OptimizationEnable Loop Interchange transformation floop-nest-optimizeCommon Report Var(flag_loop_optimize_isl) OptimizationEnable the ISL based loop nest optimizer floop-optimizeCommon IgnoreDoes nothing. Preserved for backward compatibility. floop-parallelize-allCommon Report Var(flag_loop_parallelize_all) OptimizationMark all loops as parallel floop-strip-mineCommon Report Var(flag_loop_strip_mine) OptimizationEnable Loop Strip Mining transformation floop-unroll-and-jamCommon Report Var(flag_loop_unroll_jam) OptimizationEnable Loop Unroll Jam transformation flra-rematCommon Report Var(flag_lra_remat) OptimizationDo CFG-sensitive rematerialization in LRA fltoCommonEnable link-time optimization. flto-compression-level=Common Joined RejectNegative UInteger Var(flag_lto_compression_level) Init(-1)-flto-compression-level= Use zlib compression level for IL flto-odr-type-mergingCommon Report Var(flag_lto_odr_type_mering) Init(1)Merge C++ types using One Definition Rule flto-partition=Common Joined RejectNegative Enum(lto_partition_model) Var(flag_lto_partition) Init(LTO_PARTITION_BALANCED)Specify the algorithm to partition symbols and vars at linktime flto-reportCommon Report Var(flag_lto_report) Init(0)Report various link-time optimization statistics flto-report-wpaCommon Report Var(flag_lto_report_wpa) Init(0)Report various link-time optimization statistics for WPA only flto=Common RejectNegative Joined Var(flag_lto)Link-time optimization with number of parallel jobs or jobserver. fltransLTO Report Var(flag_ltrans)Run the link-time optimizer in local transformation (LTRANS) mode. fltrans-output-list=LTO Joined Var(ltrans_output_list)Specify a file to which a list of files output by LTRANS is written. fmain=Driver JoinedOrMissing RejectNegative fmath-errnoCommon Report Var(flag_errno_math) Init(1) Optimization SetByCombinedSet errno after built-in math functions fmax-array-constructor=Fortran RejectNegative Joined UInteger Var(flag_max_array_constructor) Init(65535)-fmax-array-constructor= Maximum number of objects in an array constructor fmax-errors=Common Joined RejectNegative UInteger Var(flag_max_errors)-fmax-errors= Maximum number of errors to report fmax-identifier-length=Fortran RejectNegative Joined UInteger-fmax-identifier-length= Maximum identifier length fmax-stack-var-size=Fortran RejectNegative Joined UInteger Var(flag_max_stack_var_size) Init(-2)-fmax-stack-var-size= Size in bytes of the largest array that will be put on the stack fmax-subrecord-length=Fortran RejectNegative Joined UInteger Var(flag_max_subrecord_length)-fmax-subrecord-length= Maximum length for subrecords fmem-reportCommon Report Var(mem_report)Report on permanent memory allocation fmem-report-wpaCommon Report Var(mem_report_wpa)Report on permanent memory allocation in WPA only fmerge-all-constantsCommon Report Var(flag_merge_constants,2) Init(1)Attempt to merge identical constants and constant variables fmerge-constantsCommon Report Var(flag_merge_constants,1)Attempt to merge identical constants across compilation units fmerge-debug-stringsCommon Report Var(flag_merge_debug_strings) Init(1)Attempt to merge identical debug strings across compilation units fmessage-length=Common RejectNegative Joined UInteger-fmessage-length= Limit diagnostics to characters per line. 0 suppresses line-wrapping fmodule-privateFortran Var(flag_module_private)Set default accessibility of module entities to PRIVATE. fmodulo-schedCommon Report Var(flag_modulo_sched) OptimizationPerform SMS based modulo scheduling before the first scheduling pass fmodulo-sched-allow-regmovesCommon Report Var(flag_modulo_sched_allow_regmoves) OptimizationPerform SMS based modulo scheduling with register moves allowed fmove-loop-invariantsCommon Report Var(flag_move_loop_invariants) OptimizationMove loop invariant computations out of loops fms-extensionsC ObjC C++ ObjC++ Var(flag_ms_extensions)Don't warn about uses of Microsoft extensions fmudflapC ObjC C++ ObjC++ Ignore Warn(switch %qs is no longer supported) fmudflapirC ObjC C++ ObjC++ Ignore Warn(switch %qs is no longer supported) fmudflapthC ObjC C++ ObjC++ Ignore Warn(switch %qs is no longer supported) fname-mangling-version-C++ ObjC++ Joined Ignore Warn(switch %qs is no longer supported) fnew-abiC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fnext-runtimeObjC ObjC++ LTO Report RejectNegative Var(flag_next_runtime)Generate code for NeXT (Apple Mac OS X) runtime environment fnil-receiversObjC ObjC++ Var(flag_nil_receivers) Init(1)Assume that receivers of Objective-C messages may be nil fno-vect-cost-modelCommon RejectNegative Alias(fvect-cost-model=,unlimited)Enables the unlimited vectorizer cost model. Preserved for backward compatibility. fnon-call-exceptionsCommon Report Var(flag_non_call_exceptions) OptimizationSupport synchronous non-call exceptions fnonansi-builtinsC++ ObjC++ Var(flag_no_nonansi_builtin, 0) fnonnull-objectsC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fnothrow-optC++ ObjC++ Optimization Var(flag_nothrow_opt)Treat a throw() exception specification as noexcept to improve code size fobjc-abi-version=ObjC ObjC++ LTO Joined Report RejectNegative UInteger Var(flag_objc_abi)Specify which ABI to use for Objective-C family code and meta-data generation. fobjc-call-cxx-cdtorsObjC++ Var(flag_objc_call_cxx_cdtors)Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed fobjc-direct-dispatchObjC ObjC++ Var(flag_objc_direct_dispatch)Allow fast jumps to the message dispatcher fobjc-exceptionsObjC ObjC++ Var(flag_objc_exceptions)Enable Objective-C exception and synchronization syntax fobjc-gcObjC ObjC++ LTO Var(flag_objc_gc)Enable garbage collection (GC) in Objective-C/Objective-C++ programs fobjc-nilcheckObjC ObjC++ Var(flag_objc_nilcheck,1)Enable inline checks for nil receivers with the NeXT runtime and ABI version 2. fobjc-sjlj-exceptionsObjC ObjC++ Var(flag_objc_sjlj_exceptions) Init(-1)Enable Objective-C setjmp exception handling runtime fobjc-std=objc1ObjC ObjC++ Var(flag_objc1_only)Conform to the Objective-C 1.0 language as implemented in GCC 4.0 foffload-abi=Common Joined RejectNegative Enum(offload_abi) Var(flag_offload_abi) Init(OFFLOAD_ABI_UNSET)-foffload-abi=[lp64|ilp32] Set the ABI to use in an offload compiler foffload=Common Driver Joined MissingArgError(options or targets missing after %qs)-foffload== Specify offloading targets and options for them fomit-frame-pointerCommon Report Var(flag_omit_frame_pointer) OptimizationWhen possible do not generate stack frames fopenaccC ObjC C++ ObjC++ LTO Var(flag_openacc)Enable OpenACC fopenaccFortran LTO fopenmpC ObjC C++ ObjC++ LTO Var(flag_openmp)Enable OpenMP (implies -frecursive in Fortran) fopenmpFortran LTO fopenmp-simdC ObjC C++ ObjC++ Var(flag_openmp_simd)Enable OpenMP's SIMD directives fopenmp-simdFortran foperator-namesC++ ObjC++Recognize C++ keywords like \"compl\" and \"xor\" fopt-infoCommon Report Var(flag_opt_info) OptimizationEnable all optimization info dumps on stderr fopt-info-Common Joined RejectNegative Var(common_deferred_options) Defer-fopt-info[-=filename] Dump compiler optimization details foptimize-register-moveCommon IgnoreDoes nothing. Preserved for backward compatibility. foptimize-sibling-callsCommon Report Var(flag_optimize_sibling_calls) OptimizationOptimize sibling and tail recursive calls foptimize-static-class-initializationJava Var(flag_optimize_sci)Enable optimization of static class initialization code foptimize-strlenCommon Report Var(flag_optimize_strlen) OptimizationEnable string length optimizations on trees foptional-diagsC++ ObjC++ IgnoreDoes nothing. Preserved for backward compatibility. foutput-class-dir=Java Joined RejectNegative fpack-derivedFortran Var(flag_pack_derived)Try to lay out derived types as compactly as possible fpack-structCommon Report Var(flag_pack_struct) OptimizationPack structure members together without holes fpack-struct=Common RejectNegative Joined UInteger Optimization-fpack-struct= Set initial maximum structure member alignment fpartial-inliningCommon Report Var(flag_partial_inlining) OptimizationPerform partial inlining fpcc-struct-returnCommon Report Var(flag_pcc_struct_return,1) Init(DEFAULT_PCC_STRUCT_RETURN)Return small aggregates in memory, not registers fpch-depsC ObjC C++ ObjC++ fpch-preprocessC ObjC C++ ObjC++Look for and use PCH files even when preprocessing fpeel-loopsCommon Report Var(flag_peel_loops) OptimizationPerform loop peeling fpeepholeCommon Report Var(flag_no_peephole,0) OptimizationEnable machine specific peephole optimizations fpeephole2Common Report Var(flag_peephole2) OptimizationEnable an RTL peephole pass before sched2 fpermissiveC++ ObjC++ Var(flag_permissive)Downgrade conformance errors to warnings fpicCommon Report Var(flag_pic,1) Negative(fpie)Generate position-independent code if possible (small mode) fpieCommon Report Var(flag_pie,1) Negative(fPIC)Generate position-independent code for executables if possible (small mode) fplan9-extensionsC ObjC Var(flag_plan9_extensions)Enable Plan 9 language extensions fplugin-arg-Common Joined RejectNegative Var(common_deferred_options) Defer-fplugin-arg--[=] Specify argument = for plugin fplugin=Common Joined RejectNegative Var(common_deferred_options) DeferSpecify a plugin to load fpost-ipa-mem-reportCommon Report Var(post_ipa_mem_report)Report on memory allocation before interprocedural optimization fpre-ipa-mem-reportCommon Report Var(pre_ipa_mem_report)Report on memory allocation before interprocedural optimization fpredictive-commoningCommon Report Var(flag_predictive_commoning) OptimizationRun predictive commoning optimization. fprefetch-loop-arraysCommon Report Var(flag_prefetch_loop_arrays) Init(-1) OptimizationGenerate prefetch instructions, if available, for arrays in loops fpreprocessedC ObjC C++ ObjC++Treat the input file as already preprocessed fpreprocessedFortran fpretty-templatesC++ ObjC++ Var(flag_pretty_templates) Init(1)-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments fprofileCommon Report Var(profile_flag)Enable basic program profiling code fprofile-arcsCommon Report Var(profile_arc_flag)Insert arc-based program profiling code fprofile-correctionCommon Report Var(flag_profile_correction)Enable correction of flow inconsistent profile data input fprofile-dir=Common Joined RejectNegative Var(profile_data_prefix)Set the top-level directory for storing the profile data.The default is 'pwd'. fprofile-generateCommonEnable common options for generating profile info for profile feedback directed optimizations fprofile-generate=Common Joined RejectNegativeEnable common options for generating profile info for profile feedback directed optimizations, and set -fprofile-dir= fprofile-reorder-functionsCommon Report Var(flag_profile_reorder_functions)Enable function reordering that improves code placement fprofile-reportCommon Report Var(profile_report)Report on consistency of profile fprofile-useCommon Var(flag_profile_use)Enable common options for performing profile feedback directed optimizations fprofile-use=Common Joined RejectNegativeEnable common options for performing profile feedback directed optimizations, and set -fprofile-dir= fprofile-valuesCommon Report Var(flag_profile_values)Insert code to profile values of expressions fprotect-parensFortran Var(flag_protect_parens) Init(-1)Protect parentheses in expressions frandom-seedCommon Var(common_deferred_options) Defer frandom-seed=Common Joined RejectNegative Var(common_deferred_options) Defer-frandom-seed= Make compile reproducible using frange-checkFortran Var(flag_range_check) Init(1)Enable range checking during compilation freal-4-real-10Fortran RejectNegative Var(flag_real4_kind,10)Interpret any REAL(4) as a REAL(10) freal-4-real-16Fortran RejectNegative Var(flag_real4_kind,16)Interpret any REAL(4) as a REAL(16) freal-4-real-8Fortran RejectNegative Var(flag_real4_kind,8)Interpret any REAL(4) as a REAL(8) freal-8-real-10Fortran RejectNegative Var(flag_real8_kind,10)Interpret any REAL(8) as a REAL(10) freal-8-real-16Fortran RejectNegative Var(flag_real8_kind,16)Interpret any REAL(8) as a REAL(16) freal-8-real-4Fortran RejectNegative Var(flag_real8_kind,4)Interpret any REAL(8) as a REAL(4) frealloc-lhsFortran Var(flag_realloc_lhs) Init(-1)Reallocate the LHS in assignments freciprocal-mathCommon Report Var(flag_reciprocal_math) SetByCombined OptimizationSame as -fassociative-math for expressions which include division. frecord-gcc-switchesCommon Report Var(flag_record_gcc_switches)Record gcc command line switches in the object file. frecord-marker=4Fortran RejectNegative Var(flag_record_marker,4)Use a 4-byte record marker for unformatted files frecord-marker=8Fortran RejectNegative Var(flag_record_marker,8)Use an 8-byte record marker for unformatted files frecursiveFortran Var(flag_recursive)Allocate local variables on the stack to allow indirect recursion freduced-reflectionJava Var(flag_reduced_reflection)Reduce the amount of reflection meta-data generated freeCommon Report Var(flag_ree) Init(0)Turn on Redundant Extensions Elimination pass. freg-struct-returnCommon Report Var(flag_pcc_struct_return,0) OptimizationReturn small aggregates in registers fregmoveCommon IgnoreDoes nothing. Preserved for backward compatibility. frename-registersCommon Report Var(flag_rename_registers) Init(2) OptimizationPerform a register renaming optimization pass freorder-blocksCommon Report Var(flag_reorder_blocks) OptimizationReorder basic blocks to improve code placement freorder-blocks-and-partitionCommon Report Var(flag_reorder_blocks_and_partition) OptimizationReorder basic blocks and partition into hot and cold sections freorder-functionsCommon Report Var(flag_reorder_functions) OptimizationReorder functions to improve code placement frepack-arraysFortran Var(flag_repack_arrays)Copy array sections into a contiguous block on procedure entry freplace-objc-classesObjC ObjC++ LTO Var(flag_replace_objc_classes)Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime frepoC++ ObjC++Enable automatic template instantiation freport-bugCommon Driver Var(flag_report_bug)Collect and dump debug information into temporary file if ICE in C/C++compiler occured. frequire-return-statementGo Var(go_require_return_statement) Init(1) WarningFunctions which return values must end with return statements frerun-cse-after-loopCommon Report Var(flag_rerun_cse_after_loop) OptimizationAdd a common subexpression elimination pass after loop optimizations frerun-loop-optCommon IgnoreDoes nothing. Preserved for backward compatibility. freschedule-modulo-scheduled-loopsCommon Report Var(flag_resched_modulo_sched) OptimizationEnable/Disable the traditional scheduling in loops that already passed modulo scheduling fresolution=LTO JoinedThe resolution file frounding-mathCommon Report Var(flag_rounding_math) Optimization SetByCombinedDisable optimizations that assume default FP rounding behavior frttiC++ ObjC++ Optimization Var(flag_rtti) Init(1)Generate run time type descriptor information fsanitize-recoverCommon ReportThis switch is deprecated; use -fsanitize-recover= instead fsanitize-recover=Common Report JoinedAfter diagnosing undefined behavior attempt to continue execution fsanitize-undefined-trap-on-errorCommon Report Var(flag_sanitize_undefined_trap_on_error) Init(0)Use trap instead of a library function for undefined behavior sanitization fsanitize=Common Driver Report JoinedSelect what to sanitize fsaw-java-fileJava Undocumented RejectNegative fsched-critical-path-heuristicCommon Report Var(flag_sched_critical_path_heuristic) Init(1) OptimizationEnable the critical path heuristic in the scheduler fsched-dep-count-heuristicCommon Report Var(flag_sched_dep_count_heuristic) Init(1) OptimizationEnable the dependent count heuristic in the scheduler fsched-group-heuristicCommon Report Var(flag_sched_group_heuristic) Init(1) OptimizationEnable the group heuristic in the scheduler fsched-interblockCommon Report Var(flag_schedule_interblock) Init(1) OptimizationEnable scheduling across basic blocks fsched-last-insn-heuristicCommon Report Var(flag_sched_last_insn_heuristic) Init(1) OptimizationEnable the last instruction heuristic in the scheduler fsched-pressureCommon Report Var(flag_sched_pressure) Init(0) OptimizationEnable register pressure sensitive insn scheduling fsched-rank-heuristicCommon Report Var(flag_sched_rank_heuristic) Init(1) OptimizationEnable the rank heuristic in the scheduler fsched-specCommon Report Var(flag_schedule_speculative) Init(1) OptimizationAllow speculative motion of non-loads fsched-spec-insn-heuristicCommon Report Var(flag_sched_spec_insn_heuristic) Init(1) OptimizationEnable the speculative instruction heuristic in the scheduler fsched-spec-loadCommon Report Var(flag_schedule_speculative_load) OptimizationAllow speculative motion of some loads fsched-spec-load-dangerousCommon Report Var(flag_schedule_speculative_load_dangerous) OptimizationAllow speculative motion of more loads fsched-stalled-insnsCommon Report Var(flag_sched_stalled_insns) Optimization UIntegerAllow premature scheduling of queued insns fsched-stalled-insns-depCommon Report Var(flag_sched_stalled_insns_dep,1) Init(1) Optimization UIntegerSet dependence distance checking in premature scheduling of queued insns fsched-stalled-insns-dep=Common RejectNegative Joined UInteger Optimization-fsched-stalled-insns-dep= Set dependence distance checking in premature scheduling of queued insns fsched-stalled-insns=Common RejectNegative Joined UInteger Optimization-fsched-stalled-insns= Set number of queued insns that can be prematurely scheduled fsched-verbose=Common RejectNegative Joined UInteger Var(sched_verbose_param)-fsched-verbose= Set the verbosity level of the scheduler fsched2-use-superblocksCommon Report Var(flag_sched2_use_superblocks) OptimizationIf scheduling post reload, do superblock scheduling fsched2-use-tracesCommon IgnoreDoes nothing. Preserved for backward compatibility. fschedule-fusionCommon Report Var(flag_schedule_fusion) Init(2) OptimizationPerform a target dependent instruction fusion optimization pass fschedule-insnsCommon Report Var(flag_schedule_insns) OptimizationReschedule instructions before register allocation fschedule-insns2Common Report Var(flag_schedule_insns_after_reload) OptimizationReschedule instructions after register allocation fsecond-underscoreFortran Var(flag_second_underscore) Init(-1)Append a second underscore if the name already contains an underscore fsection-anchorsCommon Report Var(flag_section_anchors) OptimizationAccess data in the same section from shared anchor points fseeCommon IgnoreDoes nothing. Preserved for backward compatibility. fsel-sched-pipeliningCommon Report Var(flag_sel_sched_pipelining) Init(0) OptimizationPerform software pipelining of inner loops during selective scheduling fsel-sched-pipelining-outer-loopsCommon Report Var(flag_sel_sched_pipelining_outer_loops) Init(0) OptimizationPerform software pipelining of outer loops during selective scheduling fsel-sched-reschedule-pipelinedCommon Report Var(flag_sel_sched_reschedule_pipelined) Init(0) OptimizationReschedule pipelined regions without pipelining fselective-schedulingCommon Report Var(flag_selective_scheduling) OptimizationSchedule instructions using selective scheduling algorithm fselective-scheduling2Common Report Var(flag_selective_scheduling2) Optimization Run selective scheduling after reload fsemantic-interpositionCommon Report Var(flag_semantic_interposition) Init(1)Allow interposing function (or variables) by ones with different semantics (or initializer) respectively by dynamic linker fshort-doubleC ObjC C++ ObjC++ LTO Optimization Var(flag_short_double)Use the same size for double as for float fshort-enumsAda AdaWhy AdaSCILUse the narrowest integer type possible for enumeration types fshort-enumsC ObjC C++ ObjC++ LTO Optimization Var(flag_short_enums)Use the narrowest integer type possible for enumeration types fshort-enumsFortran Var(flag_short_enums) fshort-wcharC ObjC C++ ObjC++ LTO Optimization Var(flag_short_wchar)Force the underlying type for \"wchar_t\" to be \"unsigned short\" fshow-columnCommon Report Var(flag_show_column) Init(1)Show column numbers in diagnostics, when available. Default on fshrink-wrapCommon Report Var(flag_shrink_wrap) OptimizationEmit function prologues only before parts of the function that need it,rather than at the top of the function. fsign-zeroFortran Var(flag_sign_zero) Init(1)Apply negative sign to zero values fsignaling-nansCommon Report Var(flag_signaling_nans) Optimization SetByCombinedDisable optimizations observable by IEEE signaling NaNs fsigned-bitfieldsC ObjC C++ ObjC++ Var(flag_signed_bitfields) Init(1)When \"signed\" or \"unsigned\" is not given make the bitfield signed fsigned-charC ObjC C++ ObjC++ LTO Var(flag_signed_char)Make \"char\" signed by default fsigned-zerosCommon Report Var(flag_signed_zeros) Init(1) Optimization SetByCombinedDisable floating point optimizations that ignore the IEEE signedness of zero fsimd-cost-model=Common Joined RejectNegative Enum(vect_cost_model) Var(flag_simd_cost_model) Init(VECT_COST_MODEL_UNLIMITED) OptimizationSpecifies the vectorization cost model for code marked with a simd directive fsingle-precision-constantCommon Report Var(flag_single_precision_constant) OptimizationConvert floating point constants to single precision constants fsized-deallocationC++ ObjC++ Var(flag_sized_deallocation) Init(-1)Enable C++14 sized deallocation support fsource-filename=Java Joined Undocumented fsource=Java JoinedSet the source language version fsplit-ivs-in-unrollerCommon Report Var(flag_split_ivs_in_unroller) Init(1) OptimizationSplit lifetimes of induction variables when loops are unrolled fsplit-stackCommon Report Var(flag_split_stack) Init(-1)Generate discontiguous stack frames fsplit-wide-typesCommon Report Var(flag_split_wide_types) OptimizationSplit wide types into independent registers fsquangleC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fssa-phioptCommon Report Var(flag_ssa_phiopt) OptimizationOptimize conditional patterns using SSA PHI nodes fstack-arraysFortran Var(flag_stack_arrays) Init(-1)Put all local arrays on stack. fstack-checkCommon Alias(fstack-check=, specific, no)Insert stack checking code into the program. Same as -fstack-check=specific fstack-check=Common Report RejectNegative Joined-fstack-check=[no|generic|specific] Insert stack checking code into the program fstack-limitCommon Var(common_deferred_options) Defer fstack-limit-register=Common RejectNegative Joined Var(common_deferred_options) Defer-fstack-limit-register= Trap if the stack goes past fstack-limit-symbol=Common RejectNegative Joined Var(common_deferred_options) Defer-fstack-limit-symbol= Trap if the stack goes past symbol fstack-protectorCommon Report Var(flag_stack_protect, 1)Use propolice as a stack protection method fstack-protector-allCommon Report RejectNegative Var(flag_stack_protect, 2)Use a stack protection method for every function fstack-protector-explicitCommon Report RejectNegative Var(flag_stack_protect, 4)Use stack protection method only for functions with the stack_protect attribute fstack-protector-strongCommon Report RejectNegative Var(flag_stack_protect, 3)Use a smart stack protection method for certain functions fstack-reuse=Common Joined RejectNegative Enum(stack_reuse_level) Var(flag_stack_reuse) Init(SR_ALL) Optimization-fstack-reuse=[all|named_vars|none] Set stack reuse level for local variables. fstack-usageCommon RejectNegative Var(flag_stack_usage)Output stack usage information on a per-function basis fstatsC++ ObjC++ Var(flag_detailed_statistics)Display statistics accumulated during compilation fstdarg-optCommon Report Var(flag_stdarg_opt) Init(1) OptimizationOptimize amount of stdarg registers saved to stack at start of function fstore-checkJava Var(flag_store_check) Init(1)Enable assignability checks for stores into object arrays fstrength-reduceCommon IgnoreDoes nothing. Preserved for backward compatibility. fstrict-aliasingCommon Report Var(flag_strict_aliasing) OptimizationAssume strict aliasing rules apply fstrict-enumsC++ ObjC++ Optimization Var(flag_strict_enums)Assume that values of enumeration type are always within the minimum range of that type fstrict-overflowCommon Report Var(flag_strict_overflow) OptimizationTreat signed overflow as undefined fstrict-prototypeC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fstrict-volatile-bitfieldsCommon Report Var(flag_strict_volatile_bitfields) Init(-1) OptimizationForce bitfield accesses to match their type width fsync-libcallsCommon Report Var(flag_sync_libcalls) Init(1)Implement __atomic operations via libcalls to legacy __sync functions fsyntax-onlyCommon Report Var(flag_syntax_only)Check for syntax errors, then stop ftabstop=C ObjC C++ ObjC++ Joined RejectNegative UInteger-ftabstop= Distance between tab stops for column reporting ftarget-helpCommon Driver Alias(-target-help) ftarget=Java JoinedSet the target VM version ftemplate-backtrace-limit=C++ ObjC++ Joined RejectNegative UInteger Var(template_backtrace_limit) Init(10)Set the maximum number of template instantiation notes for a single warning or error ftemplate-depth-C++ ObjC++ Joined RejectNegative Undocumented Alias(ftemplate-depth=) ftemplate-depth=C++ ObjC++ Joined RejectNegative UInteger-ftemplate-depth= Specify maximum template instantiation depth ftest-coverageCommon Report Var(flag_test_coverage)Create data files needed by \"gcov\" fthis-is-variableC++ ObjC++ Ignore Warn(switch %qs is no longer supported) fthread-jumpsCommon Report Var(flag_thread_jumps) OptimizationPerform jump threading optimizations fthreadsafe-staticsC++ ObjC++ Optimization Var(flag_threadsafe_statics) Init(1)-fno-threadsafe-statics Do not generate thread-safe code for initializing local statics ftime-reportCommon Report Var(time_report)Report the time taken by each compiler pass ftls-model=Common Joined RejectNegative Enum(tls_model) Var(flag_tls_default) Init(TLS_MODEL_GLOBAL_DYNAMIC)-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec] Set the default thread-local storage code generation model ftoplevel-reorderCommon Report Var(flag_toplevel_reorder) Init(2)Reorder top level functions, variables, and asms ftracerCommon Report Var(flag_tracer) OptimizationPerform superblock formation via tail duplication ftrack-macro-expansionC ObjC C++ ObjC++ JoinedOrMissing RejectNegative UInteger ftrack-macro-expansion=C ObjC C++ ObjC++ JoinedOrMissing RejectNegative UInteger-ftrack-macro-expansion=<0|1|2> Track locations of tokens coming from macro expansion and display them in error messages ftrapping-mathCommon Report Var(flag_trapping_math) Init(1) Optimization SetByCombinedAssume floating-point operations can trap ftrapvCommon Report Var(flag_trapv) OptimizationTrap for signed overflow in addition, subtraction and multiplication ftree-bit-ccpCommon Report Var(flag_tree_bit_ccp) OptimizationEnable SSA-BIT-CCP optimization on trees ftree-builtin-call-dceCommon Report Var(flag_tree_builtin_call_dce) Init(0) OptimizationEnable conditional dead code elimination for builtin calls ftree-ccpCommon Report Var(flag_tree_ccp) OptimizationEnable SSA-CCP optimization on trees ftree-chCommon Report Var(flag_tree_ch) OptimizationEnable loop header copying on trees ftree-coalesce-inlined-varsCommon Report Var(flag_ssa_coalesce_vars,1) Init(2) RejectNegative OptimizationEnable coalescing of copy-related user variables that are inlined ftree-coalesce-varsCommon Report Var(flag_ssa_coalesce_vars,2) OptimizationEnable coalescing of all copy-related user variables ftree-copy-propCommon Report Var(flag_tree_copy_prop) OptimizationEnable copy propagation on trees ftree-copyrenameCommon Report Var(flag_tree_copyrename) OptimizationReplace SSA temporaries with better names in copies ftree-cselimCommon Report Var(flag_tree_cselim) Init(2) OptimizationTransform condition stores into unconditional ones ftree-dceCommon Report Var(flag_tree_dce) OptimizationEnable SSA dead code elimination optimization on trees ftree-dominator-optsCommon Report Var(flag_tree_dom) OptimizationEnable dominator optimizations ftree-dseCommon Report Var(flag_tree_dse) OptimizationEnable dead store elimination ftree-forwpropCommon Report Var(flag_tree_forwprop) Init(1) OptimizationEnable forward propagation on trees ftree-freCommon Report Var(flag_tree_fre) OptimizationEnable Full Redundancy Elimination (FRE) on trees ftree-loop-distribute-patternsCommon Report Var(flag_tree_loop_distribute_patterns) OptimizationEnable loop distribution for patterns transformed into a library call ftree-loop-distributionCommon Report Var(flag_tree_loop_distribution) OptimizationEnable loop distribution on trees ftree-loop-if-convertCommon Report Var(flag_tree_loop_if_convert) Init(-1) OptimizationConvert conditional jumps in innermost loops to branchless equivalents ftree-loop-if-convert-storesCommon Report Var(flag_tree_loop_if_convert_stores) OptimizationAlso if-convert conditional jumps containing memory writes ftree-loop-imCommon Report Var(flag_tree_loop_im) Init(1) OptimizationEnable loop invariant motion on trees ftree-loop-ivcanonCommon Report Var(flag_tree_loop_ivcanon) Init(1) OptimizationCreate canonical induction variables in loops ftree-loop-linearCommon Alias(floop-interchange)Enable loop interchange transforms. Same as -floop-interchange ftree-loop-optimizeCommon Report Var(flag_tree_loop_optimize) Init(1) OptimizationEnable loop optimizations on tree level ftree-loop-vectorizeCommon Report Var(flag_tree_loop_vectorize) OptimizationEnable loop vectorization on trees ftree-lrsCommon Report Var(flag_tree_live_range_split) OptimizationPerform live range splitting during the SSA->normal pass ftree-parallelize-loops=Common Report Joined RejectNegative UInteger Var(flag_tree_parallelize_loops) Init(1) OptimizationEnable automatic parallelization of loops ftree-partial-preCommon Report Var(flag_tree_partial_pre) OptimizationIn SSA-PRE optimization on trees, enable partial-partial redundancy elimination ftree-phipropCommon Report Var(flag_tree_phiprop) Init(1) OptimizationEnable hoisting loads from conditional pointers. ftree-preCommon Report Var(flag_tree_pre) OptimizationEnable SSA-PRE optimization on trees ftree-ptaCommon Report Var(flag_tree_pta) OptimizationPerform function-local points-to analysis on trees. ftree-reassocCommon Report Var(flag_tree_reassoc) Init(1) OptimizationEnable reassociation on tree level ftree-saliasCommon IgnoreDoes nothing. Preserved for backward compatibility. ftree-scev-cpropCommon Report Var(flag_tree_scev_cprop) Init(1) OptimizationEnable copy propagation of scalar-evolution information. ftree-sinkCommon Report Var(flag_tree_sink) OptimizationEnable SSA code sinking on trees ftree-slp-vectorizeCommon Report Var(flag_tree_slp_vectorize) OptimizationEnable basic block vectorization (SLP) on trees ftree-slsrCommon Report Var(flag_tree_slsr) OptimizationPerform straight-line strength reduction ftree-sraCommon Report Var(flag_tree_sra) OptimizationPerform scalar replacement of aggregates ftree-store-ccpCommon IgnoreDoes nothing. Preserved for backward compatibility. ftree-store-copy-propCommon IgnoreDoes nothing. Preserved for backward compatibility. ftree-switch-conversionCommon Report Var(flag_tree_switch_conversion) OptimizationPerform conversions of switch initializations. ftree-tail-mergeCommon Report Var(flag_tree_tail_merge) OptimizationEnable tail merging on trees ftree-terCommon Report Var(flag_tree_ter) OptimizationReplace temporary expressions in the SSA->normal pass ftree-vect-loop-versionCommon IgnoreDoes nothing. Preserved for backward compatibility. ftree-vectorizeCommon Report Var(flag_tree_vectorize) OptimizationEnable vectorization on trees ftree-vectorizer-verbose=Common Joined RejectNegative IgnoreDoes nothing. Preserved for backward compatibility. ftree-vrpCommon Report Var(flag_tree_vrp) Init(0) OptimizationPerform Value Range Propagation on trees funderscoringFortran Var(flag_underscoring) Init(1)Append underscores to externally visible names funit-at-a-timeCommon Report Var(flag_unit_at_a_time) Init(1)Compile whole compilation unit at a time funroll-all-loopsCommon Report Var(flag_unroll_all_loops) OptimizationPerform loop unrolling for all loops funroll-loopsCommon Report Var(flag_unroll_loops) OptimizationPerform loop unrolling when iteration count is known funsafe-loop-optimizationsCommon Report Var(flag_unsafe_loop_optimizations) OptimizationAllow loop optimizations to assume that the loops behave in normal way funsafe-math-optimizationsCommon Report Var(flag_unsafe_math_optimizations) Optimization SetByCombinedAllow math optimizations that may violate IEEE or ISO standards funsigned-bitfieldsC ObjC C++ ObjC++ Var(flag_signed_bitfields, 0)When \"signed\" or \"unsigned\" is not given make the bitfield unsigned funsigned-charC ObjC C++ ObjC++ LTO Var(flag_signed_char, 0)Make \"char\" unsigned by default funswitch-loopsCommon Report Var(flag_unswitch_loops) OptimizationPerform loop unswitching funwind-tablesCommon Report Var(flag_unwind_tables) OptimizationJust generate unwind tables for exception handling fuse-atomic-builtinsJava Var(flag_use_atomic_builtins) Init(0)Generate code for built-in atomic operations fuse-boehm-gcJava Var(flag_use_boehm_gc)Generate code for the Boehm GC fuse-cxa-atexitC++ ObjC++ Var(flag_use_cxa_atexit) Init(DEFAULT_USE_CXA_ATEXIT)Use __cxa_atexit to register destructors fuse-cxa-get-exception-ptrC++ ObjC++ Var(flag_use_cxa_get_exception_ptr) Init(2)Use __cxa_get_exception_ptr in exception handling fuse-divide-subroutineJava Var(flag_use_divide_subroutine) Init(1)Call a library routine to do integer divisions fuse-ld=bfdCommon Driver Negative(fuse-ld=gold)Use the bfd linker instead of the default linker fuse-ld=goldCommon Driver Negative(fuse-ld=bfd)Use the gold linker instead of the default linker fuse-linker-pluginCommon Undocumented Var(flag_use_linker_plugin) fvar-trackingCommon Report Var(flag_var_tracking) Init(2) OptimizationPerform variable tracking fvar-tracking-assignmentsCommon Report Var(flag_var_tracking_assignments) Init(2) OptimizationPerform variable tracking by annotating assignments fvar-tracking-assignments-toggleCommon Report Var(flag_var_tracking_assignments_toggle) OptimizationToggle -fvar-tracking-assignments fvar-tracking-uninitCommon Report Var(flag_var_tracking_uninit) OptimizationPerform variable tracking and also tag variables that are uninitialized fvariable-expansion-in-unrollerCommon Report Var(flag_variable_expansion_in_unroller) OptimizationApply variable expansion when loops are unrolled fvect-cost-modelCommon RejectNegative Alias(fvect-cost-model=,dynamic)Enables the dynamic vectorizer cost model. Preserved for backward compatibility. fvect-cost-model=Common Joined RejectNegative Enum(vect_cost_model) Var(flag_vect_cost_model) Init(VECT_COST_MODEL_DEFAULT) OptimizationSpecifies the cost model for vectorization fverbose-asmCommon Report Var(flag_verbose_asm)Add extra commentary to assembler output fversionCommon Driver Alias(-version) fvisibility-inlines-hiddenC++ ObjC++Marks all inlined functions and methods as having hidden visibility fvisibility-ms-compatC++ ObjC++ Var(flag_visibility_ms_compat)Changes visibility to match Microsoft Visual Studio by default fvisibility=Common Joined RejectNegative Enum(symbol_visibility) Var(default_visibility) Init(VISIBILITY_DEFAULT)-fvisibility=[default|internal|hidden|protected] Set the default symbol visibility fvptCommon Report Var(flag_value_profile_transformations) OptimizationUse expression value profiles in optimizations fvtable-gcC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fvtable-thunksC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fvtable-verify=Common Joined RejectNegative Enum(vtv_priority) Var(flag_vtable_verify) Init(VTV_NO_PRIORITY)Validate vtable pointers before using them. fvtv-countsCommon Var(flag_vtv_counts)Output vtable verification counters. fvtv-debugCommon Var(flag_vtv_debug)Output vtable verification pointer sets information. fweakC++ ObjC++ Var(flag_weak) Init(1)Emit common-like symbols as weak symbols fwebCommon Report Var(flag_web) Init(2) OptimizationConstruct webs and split unrelated uses of single variable fwhole-fileFortran IgnoreDoes nothing. Preserved for backward compatibility. fwhole-programCommon Report Var(flag_whole_program) Init(0)Perform whole program optimizations fwide-exec-charset=C ObjC C++ ObjC++ Joined RejectNegative-fwide-exec-charset= Convert all wide strings and character constants to character set fworking-directoryC ObjC C++ ObjC++ Var(flag_working_directory) Init(-1)Generate a #line directive pointing at the current working directory fworking-directoryFortran fwpaLTO Driver ReportRun the link-time optimizer in whole program analysis (WPA) mode. fwpa=LTO Driver RejectNegative Joined Var(flag_wpa)Whole program analysis (WPA) mode with number of parallel jobs specified. fwrapvCommon Report Var(flag_wrapv) OptimizationAssume signed arithmetic overflow wraps around fxrefC++ ObjC++ Ignore Warn(switch %qs is no longer supported)No longer supported fzeeCommon IgnoreDoes nothing. Preserved for backward compatibility. fzero-initialized-in-bssCommon Report Var(flag_zero_initialized_in_bss) Init(1)Put zero initialized data in the bss section fzero-linkObjC ObjC++ Var(flag_zero_link)Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode gCommon JoinedOrMissingGenerate debug information in default format gantAda AdaWhy AdaSCIL Joined UndocumentedCatch typos gcoffCommon JoinedOrMissing Negative(gdwarf)Generate debug information in COFF format gdwarfCommon JoinedOrMissing Negative(gdwarf-)Generate debug information in default version of DWARF format gdwarf-Common Joined UInteger Var(dwarf_version) Init(4) Negative(gstabs)Generate debug information in DWARF v2 (or later) format gen-declsObjC ObjC++ Var(flag_gen_declaration)Dump declarations to a .decl file ggdbCommon JoinedOrMissingGenerate debug information in default extended format ggnu-pubnamesCommon Negative(gno-pubnames) Var(debug_generate_pub_sections, 2)Generate DWARF pubnames and pubtypes sections with GNU extensions. gnatAda AdaWhy AdaSCIL Joined-gnat Specify options to GNAT gnatOAda AdaWhy AdaSCIL SeparateSet name of output ALI file (internal switch) gno-pubnamesCommon Negative(gpubnames) Var(debug_generate_pub_sections, 0) Init(-1)Don't generate DWARF pubnames and pubtypes sections. gno-record-gcc-switchesCommon RejectNegative Var(dwarf_record_gcc_switches,0) Init(1)Don't record gcc command line switches in DWARF DW_AT_producer. gno-split-dwarfCommon Driver RejectNegative Var(dwarf_split_debug_info,0) Init(0)Don't generate debug information in separate .dwo files gno-strict-dwarfCommon RejectNegative Var(dwarf_strict,0) Init(0)Emit DWARF additions beyond selected version gpubnamesCommon Negative(ggnu-pubnames) Var(debug_generate_pub_sections, 1)Generate DWARF pubnames and pubtypes sections. grecord-gcc-switchesCommon RejectNegative Var(dwarf_record_gcc_switches,1)Record gcc command line switches in DWARF DW_AT_producer. gsplit-dwarfCommon Driver RejectNegative Var(dwarf_split_debug_info,1)Generate debug information in separate .dwo files gstabsCommon JoinedOrMissing Negative(gstabs+)Generate debug information in STABS format gstabs+Common JoinedOrMissing Negative(gvms)Generate debug information in extended STABS format gstrict-dwarfCommon Report RejectNegative Var(dwarf_strict,1)Don't emit DWARF additions beyond selected version gtoggleCommon Report Var(flag_gtoggle)Toggle debug information generation gvmsCommon JoinedOrMissing Negative(gxcoff)Generate debug information in VMS format gxcoffCommon JoinedOrMissing Negative(gxcoff+)Generate debug information in XCOFF format gxcoff+Common JoinedOrMissing Negative(gcoff)Generate debug information in extended XCOFF format gzCommon DriverGenerate compressed debug sections gz=Common Driver Joined Enum(compressed_debug_sections)-gz= Generate compressed debug sections in format hDriver Joined Separate idirafterC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-idirafter Add to the end of the system include path idirafterFortran Joined Separate imacrosC ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs)-imacros Accept definition of macros in imultiarchCommon Joined Separate RejectDriver Var(imultiarch) Init(0)-imultiarch Set to be the multiarch include subdirectory imultilibC ObjC C++ ObjC++ Joined Separate-imultilib Set to be the multilib include subdirectory imultilibFortran Joined Separate includeC ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs)-include Include the contents of before other files iplugindir=Common Joined Var(plugindir_string) Init(0)-iplugindir= Set to be the default plugin directory iprefixC ObjC C++ ObjC++ Joined Separate-iprefix Specify as a prefix for next two options iprefixFortran Joined Separate iquoteC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-iquote Add to the end of the quote include path iquoteFortran Joined Separate isysrootC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-isysroot Set to be the system root directory isysrootFortran Joined Separate isystemC ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs)-isystem Add to the start of the system include path isystemFortran Joined Separate iwithprefixC ObjC C++ ObjC++ Joined Separate-iwithprefix Add to the end of the system include path iwithprefixbeforeC ObjC C++ ObjC++ Joined Separate-iwithprefixbefore Add to the end of the main include path k8DriverSynonym of -gnatk8 lDriver Joined Separate lang-asmC Undocumented RejectDriver m128bit-long-doubleTarget RejectNegative Report Mask(128BIT_LONG_DOUBLE) Savesizeof(long double) is 16 m16Target RejectNegative Negative(m32) Report Mask(CODE16) InverseMask(ISA_64BIT) Var(ix86_isa_flags) SaveGenerate 16bit i386 code m32Target RejectNegative Negative(m64) Report InverseMask(ISA_64BIT) Var(ix86_isa_flags) SaveGenerate 32bit i386 code m3dnowTarget Report Mask(ISA_3DNOW) Var(ix86_isa_flags) SaveSupport 3DNow! built-in functions m3dnowaTarget Undocumented Mask(ISA_3DNOW_A) Var(ix86_isa_flags) SaveSupport Athlon 3Dnow! built-in functions m64Target RejectNegative Negative(mx32) Report Mask(ABI_64) Var(ix86_isa_flags) SaveGenerate 64bit x86-64 code m80387Target Report Mask(80387) SaveUse hardware fp m8bit-idivTarget Report Mask(USE_8BIT_IDIV) SaveExpand 32bit/64bit integer divide into 8bit unsigned integer divide with run-time check m96bit-long-doubleTarget RejectNegative Report InverseMask(128BIT_LONG_DOUBLE) Savesizeof(long double) is 12 mabi=Target RejectNegative Joined Var(ix86_abi) Enum(calling_abi) Init(SYSV_ABI)Generate code that conforms to the given ABI mabmTarget Report Mask(ISA_ABM) Var(ix86_isa_flags) SaveSupport code generation of Advanced Bit Manipulation (ABM) instructions. maccumulate-outgoing-argsTarget Report Mask(ACCUMULATE_OUTGOING_ARGS) SaveReserve space for outgoing arguments in the function prologue maddress-mode=Target RejectNegative Joined Enum(pmode) Var(ix86_pmode) Init(PMODE_SI)Use given address mode madxTarget Report Mask(ISA_ADX) Var(ix86_isa_flags) SaveSupport flag-preserving add-carry instructions maesTarget Report Mask(ISA_AES) Var(ix86_isa_flags) SaveSupport AES built-in functions and code generation malign-data=Target RejectNegative Joined Var(ix86_align_data_type) Enum(ix86_align_data) Init(ix86_align_data_type_compat)Use the given data alignment malign-doubleTarget Report Mask(ALIGN_DOUBLE) SaveAlign some doubles on dword boundary malign-functions=Target RejectNegative Joined UIntegerFunction starts are aligned to this power of 2 malign-jumps=Target RejectNegative Joined UIntegerJump targets are aligned to this power of 2 malign-loops=Target RejectNegative Joined UIntegerLoop code aligned to this power of 2 malign-stringopsTarget RejectNegative Report InverseMask(NO_ALIGN_STRINGOPS, ALIGN_STRINGOPS) SaveAlign destination of the string operations mandroidTarget Report Mask(ANDROID) Var(flag_android) Init(ANDROID_DEFAULT ? OPTION_MASK_ANDROID : 0)Generate code for the Android platform. march=Target RejectNegative Joined Var(ix86_arch_string)Generate code for given CPU masm=Target RejectNegative Joined Enum(asm_dialect) Var(ix86_asm_dialect) Init(ASM_ATT)Use given assembler dialect mavxTarget Report Mask(ISA_AVX) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in functions and code generation mavx2Target Report Mask(ISA_AVX2) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in functions and code generation mavx256-split-unaligned-loadTarget Report Mask(AVX256_SPLIT_UNALIGNED_LOAD) SaveSplit 32-byte AVX unaligned load mavx256-split-unaligned-storeTarget Report Mask(AVX256_SPLIT_UNALIGNED_STORE) SaveSplit 32-byte AVX unaligned store mavx512bwTarget Report Mask(ISA_AVX512BW) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512BW built-in functions and code generation mavx512cdTarget Report Mask(ISA_AVX512CD) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512CD built-in functions and code generation mavx512dqTarget Report Mask(ISA_AVX512DQ) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512DQ built-in functions and code generation mavx512erTarget Report Mask(ISA_AVX512ER) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512ER built-in functions and code generation mavx512fTarget Report Mask(ISA_AVX512F) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F built-in functions and code generation mavx512ifmaTarget Report Mask(ISA_AVX512IFMA) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512IFMA built-in functions and code generation mavx512pfTarget Report Mask(ISA_AVX512PF) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512PF built-in functions and code generation mavx512vbmiTarget Report Mask(ISA_AVX512VBMI) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VBMI built-in functions and code generation mavx512vlTarget Report Mask(ISA_AVX512VL) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VL built-in functions and code generation mbionicTarget Report RejectNegative Var(linux_libc,LIBC_BIONIC) Init(DEFAULT_LIBC) Negative(mglibc)Use Bionic C library mbmiTarget Report Mask(ISA_BMI) Var(ix86_isa_flags) SaveSupport BMI built-in functions and code generation mbmi2Target Report Mask(ISA_BMI2) Var(ix86_isa_flags) SaveSupport BMI2 built-in functions and code generation mbranch-cost=Target RejectNegative Joined UInteger Var(ix86_branch_cost)Branches are this expensive (1-5, arbitrary units) mcldTarget Report Mask(CLD) SaveGenerate cld instruction in the function prologue. mclflushoptTarget Report Mask(ISA_CLFLUSHOPT) Var(ix86_isa_flags) SaveSupport CLFLUSHOPT instructions mclwbTarget Report Mask(ISA_CLWB) Var(ix86_isa_flags) SaveSupport CLWB instruction mcmodel=Target RejectNegative Joined Enum(cmodel) Var(ix86_cmodel) Init(CM_32)Use given x86-64 code model mcpu=Target RejectNegative Joined Undocumented Alias(mtune=) Warn(%<-mcpu=%> is deprecated; use %<-mtune=%> or %<-march=%> instead) mcrc32Target Report Mask(ISA_CRC32) Var(ix86_isa_flags) SaveSupport code generation of crc32 instruction. mcx16Target Report Mask(ISA_CX16) Var(ix86_isa_flags) SaveSupport code generation of cmpxchg16b instruction. mdispatch-schedulerTarget RejectNegative Var(flag_dispatch_scheduler)Do dispatch scheduling if processor is bdver1 or bdver2 or bdver3 or bdver4 and Haifa schedulingis selected. mdump-tune-featuresTarget RejectNegative Var(ix86_dump_tunes) Init(0) mf16cTarget Report Mask(ISA_F16C) Var(ix86_isa_flags) SaveSupport F16C built-in functions and code generation mfancy-math-387Target RejectNegative Report InverseMask(NO_FANCY_MATH_387, USE_FANCY_MATH_387) SaveGenerate sin, cos, sqrt for FPU mfentryTarget Report Var(flag_fentry) Init(-1)Emit profiling counter call at function entry before prologue. mfmaTarget Report Mask(ISA_FMA) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in functions and code generation mfma4Target Report Mask(ISA_FMA4) Var(ix86_isa_flags) SaveSupport FMA4 built-in functions and code generation mforce-drapTarget Report Var(ix86_force_drap)Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack mfp-ret-in-387Target Report Mask(FLOAT_RETURNS) SaveReturn values of functions in FPU registers mfpmath=Target RejectNegative Joined Var(ix86_fpmath) Enum(fpmath_unit) Init(FPMATH_387) SaveGenerate floating point mathematics using given instruction set mfsgsbaseTarget Report Mask(ISA_FSGSBASE) Var(ix86_isa_flags) SaveSupport FSGSBASE built-in functions and code generation mfused-maddTarget Undocumented Alias(ffp-contract=, fast, off) Warn(%<-mfused-madd%> is deprecated; use %<-ffp-contract=%> instead) mfxsrTarget Report Mask(ISA_FXSR) Var(ix86_isa_flags) SaveSupport FXSAVE and FXRSTOR instructions mglibcTarget Report RejectNegative Var(linux_libc,LIBC_GLIBC) Negative(muclibc)Use GNU C library mhard-floatTarget RejectNegative Mask(80387) SaveUse hardware fp mhleTarget Report Mask(ISA_HLE) Var(ix86_isa_flags) SaveSupport Hardware Lock Elision prefixes mieee-fpTarget Report Mask(IEEE_FP) SaveUse IEEE math for fp comparisons mincoming-stack-boundary=Target RejectNegative Joined UInteger Var(ix86_incoming_stack_boundary_arg)Assume incoming stack aligned to this power of 2 minline-all-stringopsTarget Report Mask(INLINE_ALL_STRINGOPS) SaveInline all known string operations minline-stringops-dynamicallyTarget Report Mask(INLINE_STRINGOPS_DYNAMICALLY) SaveInline memset/memcpy string operations, but perform inline version only for small blocks mintel-syntaxTarget Undocumented Alias(masm=, intel, att) Warn(%<-mintel-syntax%> and %<-mno-intel-syntax%> are deprecated; use %<-masm=intel%> and %<-masm=att%> instead) mlarge-data-threshold=Target RejectNegative Joined UInteger Var(ix86_section_threshold) Init(DEFAULT_LARGE_SECTION_THRESHOLD)Data greater than given threshold will go into .ldata section in x86-64 medium model mlong-double-128Target Report RejectNegative Negative(mlong-double-80) Mask(LONG_DOUBLE_128) InverseMask(LONG_DOUBLE_64) SaveUse 128-bit long double mlong-double-64Target Report RejectNegative Negative(mlong-double-128) Mask(LONG_DOUBLE_64) InverseMask(LONG_DOUBLE_128) SaveUse 64-bit long double mlong-double-80Target Report RejectNegative Negative(mlong-double-64) InverseMask(LONG_DOUBLE_64) SaveUse 80-bit long double mlwpTarget Report Mask(ISA_LWP) Var(ix86_isa_flags) SaveSupport LWP built-in functions and code generation mlzcntTarget Report Mask(ISA_LZCNT) Var(ix86_isa_flags) SaveSupport LZCNT built-in function and code generation mmemcpy-strategy=Target RejectNegative Joined Var(ix86_tune_memcpy_strategy)Specify memcpy expansion strategy when expected size is known mmemset-strategy=Target RejectNegative Joined Var(ix86_tune_memset_strategy)Specify memset expansion strategy when expected size is known mmmxTarget Report Mask(ISA_MMX) Var(ix86_isa_flags) SaveSupport MMX built-in functions mmovbeTarget Report Mask(ISA_MOVBE) Var(ix86_isa_flags) SaveSupport code generation of movbe instruction. mmpxTarget Report Mask(ISA_MPX) Var(ix86_isa_flags) SaveSupport MPX code generation mms-bitfieldsTarget Report Mask(MS_BITFIELD_LAYOUT) SaveUse native (MS) bitfield layout mno-align-stringopsTarget RejectNegative Report Mask(NO_ALIGN_STRINGOPS) Undocumented Save mno-defaultTarget RejectNegative Var(ix86_tune_no_default) Init(0)Clear all tune features mno-fancy-math-387Target RejectNegative Report Mask(NO_FANCY_MATH_387) Undocumented Save mno-push-argsTarget RejectNegative Report Mask(NO_PUSH_ARGS) Undocumented Save mno-red-zoneTarget RejectNegative Report Mask(NO_RED_ZONE) Undocumented Save mno-sse4Target RejectNegative Report InverseMask(ISA_SSE4_1) Var(ix86_isa_flags) SaveDo not support SSE4.1 and SSE4.2 built-in functions and code generation mnop-mcountTarget Report Var(flag_nop_mcount) Init(0)Generate mcount/__fentry__ calls as nops. To activate they need to bepatched in. momit-leaf-frame-pointerTarget Report Mask(OMIT_LEAF_FRAME_POINTER) SaveOmit the frame pointer in leaf functions mpc32Target RejectNegative ReportSet 80387 floating-point precision to 32-bit mpc64Target RejectNegative ReportSet 80387 floating-point precision to 64-bit mpc80Target RejectNegative ReportSet 80387 floating-point precision to 80-bit mpclmulTarget Report Mask(ISA_PCLMUL) Var(ix86_isa_flags) SaveSupport PCLMUL built-in functions and code generation mpcommitTarget Report Mask(ISA_PCOMMIT) Var(ix86_isa_flags) SaveSupport PCOMMIT instruction mpopcntTarget Report Mask(ISA_POPCNT) Var(ix86_isa_flags) SaveSupport code generation of popcnt instruction. mprefer-avx128Target Report Mask(PREFER_AVX128) SAVEUse 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-vectorizer. mpreferred-stack-boundary=Target RejectNegative Joined UInteger Var(ix86_preferred_stack_boundary_arg)Attempt to keep stack aligned to this power of 2 mprefetchwt1Target Report Mask(ISA_PREFETCHWT1) Var(ix86_isa_flags) SaveSupport PREFETCHWT1 built-in functions and code generation mprfchwTarget Report Mask(ISA_PRFCHW) Var(ix86_isa_flags) SaveSupport PREFETCHW instruction mpush-argsTarget Report InverseMask(NO_PUSH_ARGS, PUSH_ARGS) SaveUse push instructions to save outgoing arguments mrdrndTarget Report Mask(ISA_RDRND) Var(ix86_isa_flags) SaveSupport RDRND built-in functions and code generation mrdseedTarget Report Mask(ISA_RDSEED) Var(ix86_isa_flags) SaveSupport RDSEED instruction mrecipTarget Report Mask(RECIP) SaveGenerate reciprocals instead of divss and sqrtss. mrecip=Target Report RejectNegative Joined Var(ix86_recip_name)Control generation of reciprocal estimates. mrecord-mcountTarget Report Var(flag_record_mcount) Init(0)Generate __mcount_loc section with all mcount or __fentry__ calls. mred-zoneTarget RejectNegative Report InverseMask(NO_RED_ZONE, RED_ZONE) SaveUse red-zone in the x86-64 code mregparm=Target RejectNegative Joined UInteger Var(ix86_regparm)Number of registers used to pass integer arguments mrtdTarget Report Mask(RTD) SaveAlternate calling convention mrtmTarget Report Mask(ISA_RTM) Var(ix86_isa_flags) SaveSupport RTM built-in functions and code generation msahfTarget Report Mask(ISA_SAHF) Var(ix86_isa_flags) SaveSupport code generation of sahf instruction in 64bit x86-64 code. mshaTarget Report Mask(ISA_SHA) Var(ix86_isa_flags) SaveSupport SHA1 and SHA256 built-in functions and code generation mskip-rax-setupTarget Report Var(flag_skip_rax_setup) Init(0)Skip setting up RAX register when passing variable arguments. msoft-floatTarget InverseMask(80387) SaveDo not use hardware fp msseTarget Report Mask(ISA_SSE) Var(ix86_isa_flags) SaveSupport MMX and SSE built-in functions and code generation msse2Target Report Mask(ISA_SSE2) Var(ix86_isa_flags) SaveSupport MMX, SSE and SSE2 built-in functions and code generation msse2avxTarget Report Var(ix86_sse2avx)Encode SSE instructions with VEX prefix msse3Target Report Mask(ISA_SSE3) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2 and SSE3 built-in functions and code generation msse4Target RejectNegative Report Mask(ISA_SSE4_2) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation msse4.1Target Report Mask(ISA_SSE4_1) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code generation msse4.2Target Report Mask(ISA_SSE4_2) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation msse4aTarget Report Mask(ISA_SSE4A) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code generation msse5Target Undocumented Alias(mavx) Warn(%<-msse5%> was removed) msseregparmTarget RejectNegative Mask(SSEREGPARM) SaveUse SSE register passing conventions for SF and DF mode mssse3Target Report Mask(ISA_SSSE3) Var(ix86_isa_flags) SaveSupport MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code generation mstack-arg-probeTarget Report Mask(STACK_PROBE) SaveEnable stack probing mstack-protector-guard=Target RejectNegative Joined Enum(stack_protector_guard) Var(ix86_stack_protector_guard) Init(SSP_TLS)Use given stack-protector guard mstackrealignTarget Report Var(ix86_force_align_arg_pointer) Init(-1)Realign stack in prologue mstringop-strategy=Target RejectNegative Joined Enum(stringop_alg) Var(ix86_stringop_alg) Init(no_stringop)Chose strategy to generate stringop using mtbmTarget Report Mask(ISA_TBM) Var(ix86_isa_flags) SaveSupport TBM built-in functions and code generation mtls-dialect=Target RejectNegative Joined Var(ix86_tls_dialect) Enum(tls_dialect) Init(TLS_DIALECT_GNU)Use given thread-local storage dialect mtls-direct-seg-refsTarget Report Mask(TLS_DIRECT_SEG_REFS)Use direct references against %gs when accessing tls data mtune-ctrl=Target RejectNegative Joined Var(ix86_tune_ctrl_string)Fine grain control of tune features mtune=Target RejectNegative Joined Var(ix86_tune_string)Schedule code for given CPU muclibcTarget Report RejectNegative Var(linux_libc,LIBC_UCLIBC) Negative(mbionic)Use uClibc C library mveclibabi=Target RejectNegative Joined Var(ix86_veclibabi_type) Enum(ix86_veclibabi) Init(ix86_veclibabi_type_none)Vector library ABI to use mvect8-ret-in-memTarget Report Mask(VECT8_RETURNS) SaveReturn 8-byte vectors in memory mvzeroupperTarget Report Mask(VZEROUPPER) SaveGenerate vzeroupper instruction before a transfer of control flow out ofthe function. mx32Target RejectNegative Negative(m16) Report Mask(ABI_X32) Var(ix86_isa_flags) SaveGenerate 32bit x86-64 code mxopTarget Report Mask(ISA_XOP) Var(ix86_isa_flags) SaveSupport XOP built-in functions and code generation mxsaveTarget Report Mask(ISA_XSAVE) Var(ix86_isa_flags) SaveSupport XSAVE and XRSTOR instructions mxsavecTarget Report Mask(ISA_XSAVEC) Var(ix86_isa_flags) SaveSupport XSAVEC instructions mxsaveoptTarget Report Mask(ISA_XSAVEOPT) Var(ix86_isa_flags) SaveSupport XSAVEOPT instruction mxsavesTarget Report Mask(ISA_XSAVES) Var(ix86_isa_flags) SaveSupport XSAVES and XRSTORS instructions nDriver no-canonical-prefixesDriver no-integrated-cppDriver nocppFortran Negative(cpp)Disable preprocessing nodefaultlibsDriver nostartfilesDriver nostdincAda AdaWhy AdaSCIL RejectNegative nostdincC ObjC C++ ObjC++Do not search standard system include directories (those specified with -isystem will still be used) nostdincFortran nostdinc++C++ ObjC++Do not search standard system include directories for C++ nostdlibAda AdaWhy AdaSCILDo not look for object files in standard path nostdlibDriver oC ObjC C++ ObjC++ Joined Separate oCommon Driver Joined Separate Var(asm_file_name) MissingArgError(missing filename after %qs)-o Place output into oFortran Joined Separate oGo Joined Separate pCommon Var(profile_flag)Enable function profiling pass-exit-codesDriver Var(pass_exit_codes) pedanticC ObjC C++ ObjC++ Alias(Wpedantic) pedanticCommon Alias(Wpedantic) pedantic-errorsCommon Var(flag_pedantic_errors)Like -pedantic but issue them as errors pgDriver pieDriver RejectNegative Negative(shared)Create a position independent executable pipeDriver Var(use_pipes) posixDriver print-file-name=Driver JoinedOrMissing Var(print_file_name) print-libgcc-file-nameDriver print-multi-directoryDriver Var(print_multi_directory) print-multi-libDriver Var(print_multi_lib) print-multi-os-directoryDriver Var(print_multi_os_directory) print-multiarchDriver Var(print_multiarch) print-objc-runtime-infoObjC ObjC++Generate C header of platform-specific features print-prog-name=Driver JoinedOrMissing Var(print_prog_name) print-search-dirsDriver Var(print_search_dirs) print-sysrootDriver Var(print_sysroot) print-sysroot-headers-suffixDriver Var(print_sysroot_headers_suffix) profileDriver pthreadDriver quietCommon Var(quiet_flag) RejectDriverDo not display functions compiled or elapsed time rDriver rdynamicDriver remapC ObjC C++ ObjC++Remap file names when including files sDriver s-bc-abiDriver save-tempsDriver save-temps=Driver Joined sharedDriver RejectNegative Negative(pie)Create a shared library shared-libgccDriver specsDriver Separate Alias(specs=) specs=Driver Joined staticDriver static-libasanDriver static-libgccDriver static-libgcjDriver static-libgfortranDriver static-libgfortranFortranStatically link the GNU Fortran helper library (libgfortran) static-libgoDriver static-liblsanDriver static-libmpxDriver static-libmpxwrappersDriver static-libstdc++Driver static-libtsanDriver static-libubsanDriver std=c++03C++ ObjC++ Alias(std=c++98)Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum std=c++0xC++ ObjC++ Alias(std=c++11) UndocumentedDeprecated in favor of -std=c++11 std=c++11C++ ObjC++Conform to the ISO 2011 C++ standard std=c++14C++ ObjC++ UndocumentedConform to the ISO 2014 C++ standard (experimental and incomplete support) std=c++17C++ ObjC++ Alias(std=c++1z) Undocumented std=c++1yC++ ObjC++ Alias(std=c++14) UndocumentedDeprecated in favor of -std=c++14 std=c++1zC++ ObjC++Conform to the ISO 2017(?) C++ draft standard (experimental and incomplete support) std=c++98C++ ObjC++Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum std=c11C ObjCConform to the ISO 2011 C standard (experimental and incomplete support) std=c1xC ObjC Alias(std=c11)Deprecated in favor of -std=c11 std=c89C ObjC Alias(std=c90)Conform to the ISO 1990 C standard std=c90C ObjCConform to the ISO 1990 C standard std=c99C ObjCConform to the ISO 1999 C standard std=c9xC ObjC Alias(std=c99)Deprecated in favor of -std=c99 std=f2003FortranConform to the ISO Fortran 2003 standard std=f2008FortranConform to the ISO Fortran 2008 standard std=f2008tsFortranConform to the ISO Fortran 2008 standard including TS 29113 std=f95FortranConform to the ISO Fortran 95 standard std=gnuFortranConform to nothing in particular std=gnu++03C++ ObjC++ Alias(std=gnu++98)Conform to the ISO 1998 C++ standard revised by the 2003 technicalcorrigendum with GNU extensions std=gnu++0xC++ ObjC++ Alias(std=gnu++11)Deprecated in favor of -std=gnu++11 std=gnu++11C++ ObjC++Conform to the ISO 2011 C++ standard with GNU extensions (experimental and incomplete support) std=gnu++14C++ ObjC++Conform to the ISO 2014 C++ standard with GNU extensions (experimental and incomplete support) std=gnu++17C++ ObjC++ Alias(std=gnu++1z) Undocumented std=gnu++1yC++ ObjC++ Alias(std=gnu++14) Undocumented std=gnu++1zC++ ObjC++Conform to the ISO 201z(7?) C++ draft standard with GNU extensions (experimental and incomplete support) std=gnu++98C++ ObjC++Conform to the ISO 1998 C++ standard revised by the 2003 technicalcorrigendum with GNU extensions std=gnu11C ObjCConform to the ISO 2011 C standard with GNU extensions (experimental and incomplete support) std=gnu1xC ObjC Alias(std=gnu11)Deprecated in favor of -std=gnu11 std=gnu89C ObjC Alias(std=gnu90)Conform to the ISO 1990 C standard with GNU extensions std=gnu90C ObjCConform to the ISO 1990 C standard with GNU extensions std=gnu99C ObjCConform to the ISO 1999 C standard with GNU extensions std=gnu9xC ObjC Alias(std=gnu99)Deprecated in favor of -std=gnu99 std=iso9899:1990C ObjC Alias(std=c90)Conform to the ISO 1990 C standard std=iso9899:199409C ObjCConform to the ISO 1990 C standard as amended in 1994 std=iso9899:1999C ObjC Alias(std=c99)Conform to the ISO 1999 C standard std=iso9899:199xC ObjC Alias(std=c99)Deprecated in favor of -std=iso9899:1999 std=iso9899:2011C ObjC Alias(std=c11)Conform to the ISO 2011 C standard (experimental and incomplete support) std=legacyFortranAccept extensions to support legacy code symbolicDriver tDriver timeDriver Var(report_times) time=Driver JoinedOrMissing tno-android-ccDriver tno-android-ldDriver traditionalDriver traditional-cppC ObjC C++ ObjC++Enable traditional preprocessing trigraphsC ObjC C++ ObjC++-trigraphs Support ISO C trigraphs uDriver Joined Separate undefC ObjC C++ ObjC++ Var(flag_undef)Do not predefine system-specific and GCC-specific macros undefDriver undefFortran vC ObjC C++ ObjC++ vCommon Driver Var(verbose_flag)Enable verbose output vFortran versionCommon Var(version_flag) RejectDriverDisplay the compiler's version versionJava RejectDriver wC ObjC C++ ObjC++ wCommon Var(inhibit_warnings)Suppress warnings wrapperDriver Separate Var(wrapper_string) xDriver Joined Separate zDriver Joined Separate