c.opt revision 1.1.1.1
1; Options for the C, ObjC, C++ and ObjC++ front ends. 2; Copyright (C) 2003-2013 Free Software Foundation, Inc. 3; 4; This file is part of GCC. 5; 6; GCC is free software; you can redistribute it and/or modify it under 7; the terms of the GNU General Public License as published by the Free 8; Software Foundation; either version 3, or (at your option) any later 9; version. 10; 11; GCC is distributed in the hope that it will be useful, but WITHOUT ANY 12; WARRANTY; without even the implied warranty of MERCHANTABILITY or 13; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 14; for more details. 15; 16; You should have received a copy of the GNU General Public License 17; along with GCC; see the file COPYING3. If not see 18; <http://www.gnu.org/licenses/>. 19 20; See the GCC internals manual for a description of this file's format. 21 22; Please try to keep this file in ASCII collating order. 23 24Language 25C 26 27Language 28ObjC 29 30Language 31C++ 32 33Language 34ObjC++ 35 36-all-warnings 37C ObjC C++ ObjC++ Warning Alias(Wall) 38 39-ansi 40C ObjC C++ ObjC++ Alias(ansi) 41 42-assert 43C ObjC C++ ObjC++ Separate Alias(A) MissingArgError(assertion missing after %qs) 44 45-assert= 46C ObjC C++ ObjC++ Joined Alias(A) MissingArgError(assertion missing after %qs) 47 48-comments 49C ObjC C++ ObjC++ Alias(C) 50 51-comments-in-macros 52C ObjC C++ ObjC++ Alias(CC) 53 54-define-macro 55C ObjC C++ ObjC++ Separate Alias(D) MissingArgError(macro name missing after %qs) 56 57-define-macro= 58C ObjC C++ ObjC++ Joined Alias(D) MissingArgError(macro name missing after %qs) 59 60-dependencies 61C ObjC C++ ObjC++ Alias(M) 62 63-dump 64C ObjC C++ ObjC++ Separate Alias(d) 65 66-dump= 67C ObjC C++ ObjC++ Joined Alias(d) 68 69-imacros 70C ObjC C++ ObjC++ Separate Alias(imacros) MissingArgError(missing filename after %qs) 71 72-imacros= 73C ObjC C++ ObjC++ Joined Alias(imacros) MissingArgError(missing filename after %qs) 74 75-include 76C ObjC C++ ObjC++ Separate Alias(include) MissingArgError(missing filename after %qs) 77 78-include= 79C ObjC C++ ObjC++ Joined Alias(include) MissingArgError(missing filename after %qs) 80 81-include-barrier 82C ObjC C++ ObjC++ Alias(I, -) 83 84-include-directory 85C ObjC C++ ObjC++ Separate Alias(I) MissingArgError(missing path after %qs) 86 87-include-directory= 88C ObjC C++ ObjC++ Joined Alias(I) MissingArgError(missing path after %qs) 89 90-include-directory-after 91C ObjC C++ ObjC++ Separate Alias(idirafter) MissingArgError(missing path after %qs) 92 93-include-directory-after= 94C ObjC C++ ObjC++ Joined Alias(idirafter) MissingArgError(missing path after %qs) 95 96-include-prefix 97C ObjC C++ ObjC++ Separate Alias(iprefix) 98 99-include-prefix= 100C ObjC C++ ObjC++ JoinedOrMissing Alias(iprefix) 101 102-include-with-prefix 103C ObjC C++ ObjC++ Separate Alias(iwithprefix) 104 105-include-with-prefix= 106C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefix) 107 108-include-with-prefix-after 109C ObjC C++ ObjC++ Separate Alias(iwithprefix) 110 111-include-with-prefix-after= 112C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefix) 113 114-include-with-prefix-before 115C ObjC C++ ObjC++ Separate Alias(iwithprefixbefore) 116 117-include-with-prefix-before= 118C ObjC C++ ObjC++ JoinedOrMissing Alias(iwithprefixbefore) 119 120-no-integrated-cpp 121Driver Alias(no-integrated-cpp) 122 123-no-line-commands 124C ObjC C++ ObjC++ Alias(P) 125 126-no-standard-includes 127C ObjC C++ ObjC++ Alias(nostdinc) 128 129-no-warnings 130C ObjC C++ ObjC++ Alias(w) 131 132-output 133C ObjC C++ ObjC++ Separate Alias(o) 134 135-output= 136C ObjC C++ ObjC++ Joined Alias(o) 137 138-output-pch= 139C ObjC C++ ObjC++ Joined Separate 140 141-pedantic 142C ObjC C++ ObjC++ Alias(pedantic) 143 144-preprocess 145C ObjC C++ ObjC++ Undocumented Alias(E) 146 147-print-missing-file-dependencies 148C ObjC C++ ObjC++ Alias(MG) 149 150-trace-includes 151C ObjC C++ ObjC++ Alias(H) 152 153-traditional 154Driver Alias(traditional) 155 156-traditional-cpp 157C ObjC C++ ObjC++ Alias(traditional-cpp) 158 159-trigraphs 160C ObjC C++ ObjC++ Alias(trigraphs) 161 162-undefine-macro 163C ObjC C++ ObjC++ Separate Alias(U) MissingArgError(macro name missing after %qs) 164 165-undefine-macro= 166C ObjC C++ ObjC++ Joined Alias(U) MissingArgError(macro name missing after %qs) 167 168-user-dependencies 169C ObjC C++ ObjC++ Alias(MM) 170 171-verbose 172Common C ObjC C++ ObjC++ Alias(v) 173 174-write-dependencies 175C ObjC C++ ObjC++ NoDriverArg Separate Alias(MD) MissingArgError(missing filename after %qs) 176 177-write-user-dependencies 178C ObjC C++ ObjC++ NoDriverArg Separate Alias(MMD) MissingArgError(missing filename after %qs) 179 180A 181C ObjC C++ ObjC++ Joined Separate MissingArgError(assertion missing after %qs) 182-A<question>=<answer> Assert the <answer> to <question>. Putting '-' before <question> disables the <answer> to <question> 183 184C 185C ObjC C++ ObjC++ 186Do not discard comments 187 188CC 189C ObjC C++ ObjC++ 190Do not discard comments in macro expansions 191 192D 193C ObjC C++ ObjC++ Joined Separate MissingArgError(macro name missing after %qs) 194-D<macro>[=<val>] Define a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1 195 196E 197C ObjC C++ ObjC++ Undocumented Var(flag_preprocess_only) 198 199F 200Driver C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 201-F <dir> Add <dir> to the end of the main framework include path 202 203H 204C ObjC C++ ObjC++ 205Print the name of header files as they are used 206 207I 208C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 209-I <dir> Add <dir> to the end of the main include path 210 211M 212C ObjC C++ ObjC++ 213Generate make dependencies 214 215MD 216C ObjC C++ ObjC++ NoDriverArg Separate MissingArgError(missing filename after %qs) 217Generate make dependencies and compile 218 219MF 220C ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs) 221-MF <file> Write dependency output to the given file 222 223MG 224C ObjC C++ ObjC++ 225Treat missing header files as generated files 226 227MM 228C ObjC C++ ObjC++ 229Like -M but ignore system header files 230 231MMD 232C ObjC C++ ObjC++ NoDriverArg Separate MissingArgError(missing filename after %qs) 233Like -MD but ignore system header files 234 235MP 236C ObjC C++ ObjC++ 237Generate phony targets for all headers 238 239MQ 240C ObjC C++ ObjC++ Joined Separate MissingArgError(missing makefile target after %qs) 241-MQ <target> Add a MAKE-quoted target 242 243MT 244C ObjC C++ ObjC++ Joined Separate MissingArgError(missing makefile target after %qs) 245-MT <target> Add an unquoted target 246 247P 248C ObjC C++ ObjC++ 249Do not generate #line directives 250 251U 252C ObjC C++ ObjC++ Joined Separate MissingArgError(macro name missing after %qs) 253-U<macro> Undefine <macro> 254 255Wabi 256C ObjC C++ ObjC++ LTO Var(warn_abi) Warning 257Warn about things that will change when compiling with an ABI-compliant compiler 258 259Wabi-tag 260C++ ObjC++ Var(warn_abi_tag) Warning 261Warn if a subobject has an abi_tag attribute that the complete object type does not have 262 263Wpsabi 264C ObjC C++ ObjC++ LTO Var(warn_psabi) Init(1) Undocumented 265 266Waddress 267C ObjC C++ ObjC++ Var(warn_address) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 268Warn about suspicious uses of memory addresses 269 270Wall 271C ObjC C++ ObjC++ Warning 272Enable most warning messages 273 274Warray-bounds 275LangEnabledBy(C ObjC C++ ObjC++,Wall) 276; in common.opt 277 278Wassign-intercept 279ObjC ObjC++ Var(warn_assign_intercept) Warning 280Warn whenever an Objective-C assignment is being intercepted by the garbage collector 281 282Wbad-function-cast 283C ObjC Var(warn_bad_function_cast) Warning 284Warn about casting functions to incompatible types 285 286Wbuiltin-macro-redefined 287C ObjC C++ ObjC++ Warning 288Warn when a built-in preprocessor macro is undefined or redefined 289 290Wc++-compat 291C ObjC Var(warn_cxx_compat) Warning 292Warn about C constructs that are not in the common subset of C and C++ 293 294Wc++0x-compat 295C++ ObjC++ Var(warn_cxx0x_compat) Warning LangEnabledBy(C++ ObjC++,Wall) 296Deprecated in favor of -Wc++11-compat 297 298Wc++11-compat 299C++ ObjC++ Warning Alias(Wc++0x-compat) 300Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 2011 301 302Wcast-qual 303C ObjC C++ ObjC++ Var(warn_cast_qual) Warning 304Warn about casts which discard qualifiers 305 306Wchar-subscripts 307C ObjC C++ ObjC++ Var(warn_char_subscripts) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 308Warn about subscripts whose type is \"char\" 309 310Wclobbered 311C ObjC C++ ObjC++ Var(warn_clobbered) Warning EnabledBy(Wextra) 312Warn about variables that might be changed by \"longjmp\" or \"vfork\" 313 314Wcomment 315C ObjC C++ ObjC++ Warning 316Warn about possibly nested block comments, and C++ comments spanning more than one physical line 317 318Wcomments 319C ObjC C++ ObjC++ Warning Alias(Wcomment) 320Synonym for -Wcomment 321 322Wconversion 323C ObjC C++ ObjC++ Var(warn_conversion) Warning 324Warn for implicit type conversions that may change a value 325 326Wconversion-null 327C++ ObjC++ Var(warn_conversion_null) Init(1) Warning 328Warn for converting NULL from/to a non-pointer type 329 330Wctor-dtor-privacy 331C++ ObjC++ Var(warn_ctor_dtor_privacy) Warning 332Warn when all constructors and destructors are private 333 334Wdeclaration-after-statement 335C ObjC Var(warn_declaration_after_statement) Warning 336Warn when a declaration is found after a statement 337 338Wdelete-non-virtual-dtor 339C++ ObjC++ Var(warn_delnonvdtor) Warning LangEnabledBy(C++ ObjC++,Wall) 340Warn about deleting polymorphic objects with non-virtual destructors 341 342Wdelete-non-virtual-dtor 343LangEnabledBy(C++ ObjC++,Weffc++) 344; 345 346Wdeprecated 347C C++ ObjC ObjC++ Var(warn_deprecated) Init(1) Warning 348Warn if a deprecated compiler feature, class, method, or field is used 349 350Wdiv-by-zero 351C ObjC C++ ObjC++ Var(warn_div_by_zero) Init(1) Warning 352Warn about compile-time integer division by zero 353 354Weffc++ 355C++ ObjC++ Var(warn_ecpp) Warning 356Warn about violations of Effective C++ style rules 357 358Wempty-body 359C ObjC C++ ObjC++ Var(warn_empty_body) Warning EnabledBy(Wextra) 360Warn about an empty body in an if or else statement 361 362Wendif-labels 363C ObjC C++ ObjC++ Warning 364Warn about stray tokens after #elif and #endif 365 366Wenum-compare 367C ObjC C++ ObjC++ Var(warn_enum_compare) Init(-1) Warning LangEnabledBy(C ObjC,Wall) 368Warn about comparison of different enum types 369 370Wenum-compare 371LangEnabledBy(C ObjC,Wc++-compat) 372; 373 374Werror 375C ObjC C++ ObjC++ 376; Documented in common.opt 377 378Werror-implicit-function-declaration 379C ObjC RejectNegative Warning Alias(Werror=, implicit-function-declaration) 380This switch is deprecated; use -Werror=implicit-function-declaration instead 381 382Wfloat-equal 383C ObjC C++ ObjC++ Var(warn_float_equal) Warning 384Warn if testing floating point numbers for equality 385 386Wformat 387C ObjC C++ ObjC++ Warning Alias(Wformat=, 1, 0) 388Warn about printf/scanf/strftime/strfmon format string anomalies 389 390Wformat-contains-nul 391C ObjC C++ ObjC++ Var(warn_format_contains_nul) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 1, 0) 392Warn about format strings that contain NUL bytes 393 394Wformat-extra-args 395C ObjC C++ ObjC++ Var(warn_format_extra_args) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 1, 0) 396Warn if passing too many arguments to a function for its format string 397 398Wformat-nonliteral 399C ObjC C++ ObjC++ Var(warn_format_nonliteral) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0) 400Warn about format strings that are not literals 401 402Wformat-security 403C ObjC C++ ObjC++ Var(warn_format_security) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=, warn_format >= 2, 0) 404Warn about possible security problems with format functions 405 406Wformat-y2k 407C ObjC C++ ObjC++ Var(warn_format_y2k) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 2, 0) 408Warn about strftime formats yielding 2-digit years 409 410Wformat-zero-length 411C ObjC C++ ObjC++ Var(warn_format_zero_length) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 1, 0) 412Warn about zero-length formats 413 414Wformat= 415C ObjC C++ ObjC++ Joined RejectNegative UInteger Var(warn_format) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) 416Warn about printf/scanf/strftime/strfmon format string anomalies 417 418Wignored-qualifiers 419C C++ Var(warn_ignored_qualifiers) Warning EnabledBy(Wextra) 420Warn whenever type qualifiers are ignored. 421 422Winit-self 423C ObjC C++ ObjC++ Var(warn_init_self) Warning LangEnabledBy(C++ ObjC++,Wall) 424Warn about variables which are initialized to themselves 425 426Wimplicit 427C ObjC Var(warn_implicit) Warning LangEnabledBy(C ObjC,Wall) 428Warn about implicit declarations 429 430Wdouble-promotion 431C ObjC C++ ObjC++ Var(warn_double_promotion) Warning 432Warn about implicit conversions from \"float\" to \"double\" 433 434Wimplicit-function-declaration 435C ObjC Var(warn_implicit_function_declaration) Init(-1) Warning LangEnabledBy(C ObjC,Wimplicit) 436Warn about implicit function declarations 437 438Wimplicit-int 439C ObjC Var(warn_implicit_int) Warning LangEnabledBy(C ObjC,Wimplicit) 440Warn when a declaration does not specify a type 441 442Wimport 443C ObjC C++ ObjC++ Undocumented Ignore 444 445Winherited-variadic-ctor 446C++ ObjC++ Var(warn_inh_var_ctor) Init(1) Warning 447Warn about C++11 inheriting constructors when the base has a variadic constructor 448 449Wint-to-pointer-cast 450C ObjC C++ ObjC++ Var(warn_int_to_pointer_cast) Init(1) Warning 451Warn when there is a cast to a pointer from an integer of a different size 452 453Winvalid-offsetof 454C++ ObjC++ Var(warn_invalid_offsetof) Init(1) Warning 455Warn about invalid uses of the \"offsetof\" macro 456 457Winvalid-pch 458C ObjC C++ ObjC++ Warning 459Warn about PCH files that are found but not used 460 461Wjump-misses-init 462C ObjC Var(warn_jump_misses_init) Warning LangEnabledby(C ObjC,Wc++-compat) 463Warn when a jump misses a variable initialization 464 465Wliteral-suffix 466C++ ObjC++ Warning 467Warn when a string or character literal is followed by a ud-suffix which does not begin with an underscore. 468 469Wlogical-op 470C ObjC C++ ObjC++ Var(warn_logical_op) Init(0) Warning 471Warn when a logical operator is suspiciously always evaluating to true or false 472 473Wlong-long 474C ObjC C++ ObjC++ Var(warn_long_long) Init(-1) Warning 475Do not warn about using \"long long\" when -pedantic 476 477Wmain 478C ObjC C++ ObjC++ Var(warn_main) Init(-1) Warning LangEnabledBy(C ObjC,Wall, 2, 0) 479Warn about suspicious declarations of \"main\" 480 481Wmain 482LangEnabledBy(C ObjC C++ ObjC++,Wpedantic, 2, 0) 483; 484 485Wmissing-braces 486C ObjC C++ ObjC++ Var(warn_missing_braces) Warning LangEnabledBy(C ObjC,Wall) 487Warn about possibly missing braces around initializers 488 489Wmissing-declarations 490C ObjC C++ ObjC++ Var(warn_missing_declarations) Warning 491Warn about global functions without previous declarations 492 493Wmissing-field-initializers 494C ObjC C++ ObjC++ Var(warn_missing_field_initializers) Warning EnabledBy(Wextra) 495Warn about missing fields in struct initializers 496 497Wsizeof-pointer-memaccess 498C ObjC C++ ObjC++ Var(warn_sizeof_pointer_memaccess) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 499 500Wsuggest-attribute=format 501C ObjC C++ ObjC++ Var(warn_suggest_attribute_format) Warning 502Warn about functions which might be candidates for format attributes 503 504Wswitch 505C ObjC C++ ObjC++ Var(warn_switch) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 506Warn about enumerated switches, with no default, missing a case 507 508Wswitch-default 509C ObjC C++ ObjC++ Var(warn_switch_default) Warning 510Warn about enumerated switches missing a \"default:\" statement 511 512Wswitch-enum 513C ObjC C++ ObjC++ Var(warn_switch_enum) Warning 514Warn about all enumerated switches missing a specific case 515 516Wmissing-format-attribute 517C ObjC C++ ObjC++ Alias(Wsuggest-attribute=format) 518; 519 520Wmissing-include-dirs 521C ObjC C++ ObjC++ Warning 522Warn about user-specified include directories that do not exist 523 524Wmissing-parameter-type 525C ObjC Var(warn_missing_parameter_type) Warning EnabledBy(Wextra) 526Warn about function parameters declared without a type specifier in K&R-style functions 527 528Wmissing-prototypes 529C ObjC Var(warn_missing_prototypes) Warning 530Warn about global functions without prototypes 531 532Wmudflap 533C ObjC C++ ObjC++ Var(warn_mudflap) Init(1) Warning 534Warn about constructs not instrumented by -fmudflap 535 536Wmultichar 537C ObjC C++ ObjC++ Warning 538Warn about use of multi-character character constants 539 540Wnarrowing 541C ObjC C++ ObjC++ Warning Var(warn_narrowing) Init(-1) LangEnabledBy(C++ ObjC++,Wall) 542Warn about narrowing conversions within { } that are ill-formed in C++11 543 544Wnarrowing 545C ObjC C++ ObjC++ LangEnabledBy(C++ ObjC++,Wc++0x-compat) 546; 547 548Wnested-externs 549C ObjC Var(warn_nested_externs) Warning 550Warn about \"extern\" declarations not at file scope 551 552Wnoexcept 553C++ ObjC++ Var(warn_noexcept) Warning 554Warn when a noexcept expression evaluates to false even though the expression can't actually throw 555 556Wnon-template-friend 557C++ ObjC++ Var(warn_nontemplate_friend) Init(1) Warning 558Warn when non-templatized friend functions are declared within a template 559 560Wnon-virtual-dtor 561C++ ObjC++ Var(warn_nonvdtor) Warning 562Warn about non-virtual destructors 563 564Wnonnull 565C ObjC C++ ObjC++ Var(warn_nonnull) Warning LangEnabledBy(C ObjC C++ ObjC++,Wformat=,warn_format >= 1,0) 566Warn about NULL being passed to argument slots marked as requiring non-NULL 567 568Wnonnull 569C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) 570; 571 572Wnormalized= 573C ObjC C++ ObjC++ Joined Warning 574-Wnormalized=<id|nfc|nfkc> Warn about non-normalised Unicode strings 575 576Wold-style-cast 577C++ ObjC++ Var(warn_old_style_cast) Warning 578Warn if a C-style cast is used in a program 579 580Wold-style-declaration 581C ObjC Var(warn_old_style_declaration) Warning EnabledBy(Wextra) 582Warn for obsolescent usage in a declaration 583 584Wold-style-definition 585C ObjC Var(warn_old_style_definition) Warning 586Warn if an old-style parameter definition is used 587 588Woverlength-strings 589C ObjC C++ ObjC++ Var(warn_overlength_strings) Warning LangEnabledBy(C ObjC C++ ObjC++,Wpedantic) 590Warn if a string is longer than the maximum portable length specified by the standard 591 592Woverloaded-virtual 593C++ ObjC++ Var(warn_overloaded_virtual) Warning 594Warn about overloaded virtual function names 595 596Woverride-init 597C ObjC Var(warn_override_init) Warning EnabledBy(Wextra) 598Warn about overriding initializers without side effects 599 600Wpacked-bitfield-compat 601C ObjC C++ ObjC++ Var(warn_packed_bitfield_compat) Init(-1) Warning 602Warn about packed bit-fields whose offset changed in GCC 4.4 603 604Wparentheses 605C ObjC C++ ObjC++ Var(warn_parentheses) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 606Warn about possibly missing parentheses 607 608Wpedantic 609C ObjC C++ ObjC++ Warning 610; Documented in common.opt 611 612Wpmf-conversions 613C++ ObjC++ Var(warn_pmf2ptr) Init(1) Warning 614Warn when converting the type of pointers to member functions 615 616Wpointer-arith 617C ObjC C++ ObjC++ Var(warn_pointer_arith) Warning 618Warn about function pointer arithmetic 619 620Wpointer-sign 621C ObjC Var(warn_pointer_sign) Warning LangEnabledBy(C ObjC,Wall) 622Warn when a pointer differs in signedness in an assignment 623 624Wpointer-sign 625C ObjC LangEnabledBy(C ObjC,Wpedantic) 626; 627 628Wpointer-to-int-cast 629C ObjC Var(warn_pointer_to_int_cast) Init(1) Warning 630Warn when a pointer is cast to an integer of a different size 631 632Wpragmas 633C ObjC C++ ObjC++ Var(warn_pragmas) Init(1) Warning 634Warn about misuses of pragmas 635 636Wproperty-assign-default 637ObjC ObjC++ Var(warn_property_assign_default) Init(1) Warning 638Warn if a property for an Objective-C object has no assign semantics specified 639 640Wprotocol 641ObjC ObjC++ Var(warn_protocol) Init(1) Warning 642Warn if inherited methods are unimplemented 643 644Wredundant-decls 645C ObjC C++ ObjC++ Var(warn_redundant_decls) Warning 646Warn about multiple declarations of the same object 647 648Wreorder 649C++ ObjC++ Var(warn_reorder) Warning LangEnabledBy(C++ ObjC++,Wall) 650Warn when the compiler reorders code 651 652Wreturn-local-addr 653C ObjC C++ ObjC++ Var(warn_return_local_addr) Init(1) Warning 654Warn about returning a pointer/reference to a local or temporary variable. 655 656Wreturn-type 657C ObjC C++ ObjC++ Var(warn_return_type) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 658Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++) 659 660Wselector 661ObjC ObjC++ Var(warn_selector) Warning 662Warn if a selector has multiple methods 663 664Wsequence-point 665C ObjC C++ ObjC++ Var(warn_sequence_point) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 666Warn about possible violations of sequence point rules 667 668Wsign-compare 669C ObjC C++ ObjC++ Var(warn_sign_compare) Warning LangEnabledBy(C++ ObjC++,Wall) 670Warn about signed-unsigned comparisons 671 672Wsign-compare 673C ObjC C++ ObjC++ EnabledBy(Wextra) 674; 675 676Wsign-conversion 677C ObjC C++ ObjC++ Var(warn_sign_conversion) LangEnabledBy(C ObjC,Wconversion) 678Warn for implicit type conversions between signed and unsigned integers 679 680Wsign-promo 681C++ ObjC++ Var(warn_sign_promo) Warning 682Warn when overload promotes from unsigned to signed 683 684Wstrict-null-sentinel 685C++ ObjC++ Warning Var(warn_strict_null_sentinel) 686Warn about uncasted NULL used as sentinel 687 688Wstrict-prototypes 689C ObjC Var(warn_strict_prototypes) Warning 690Warn about unprototyped function declarations 691 692Wstrict-aliasing= 693C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall, 3, 0) 694; 695 696Wstrict-overflow= 697C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) 698; 699 700Wstrict-selector-match 701ObjC ObjC++ Var(warn_strict_selector_match) Warning 702Warn if type signatures of candidate methods do not match exactly 703 704Wsync-nand 705C C++ Var(warn_sync_nand) Init(1) Warning 706Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used 707 708Wsynth 709C++ ObjC++ Var(warn_synth) Warning 710Deprecated. This switch has no effect 711 712Wsystem-headers 713C ObjC C++ ObjC++ Warning 714; Documented in common.opt 715 716Wtraditional 717C ObjC Var(warn_traditional) Warning 718Warn about features not present in traditional C 719 720Wtraditional-conversion 721C ObjC Var(warn_traditional_conversion) Warning 722Warn of prototypes causing type conversions different from what would happen in the absence of prototype 723 724Wtrigraphs 725C ObjC C++ ObjC++ Warning 726Warn if trigraphs are encountered that might affect the meaning of the program 727 728Wundeclared-selector 729ObjC ObjC++ Var(warn_undeclared_selector) Warning 730Warn about @selector()s without previously declared methods 731 732Wundef 733C ObjC C++ ObjC++ Warning 734Warn if an undefined macro is used in an #if directive 735 736Wuninitialized 737C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) 738; 739 740Wmaybe-uninitialized 741C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) 742; 743 744Wunknown-pragmas 745C ObjC C++ ObjC++ Warning Var(warn_unknown_pragmas) LangEnabledBy(C ObjC C++ ObjC++,Wall, 1, 0) 746Warn about unrecognized pragmas 747 748Wunsuffixed-float-constants 749C ObjC Var(warn_unsuffixed_float_constants) Warning 750Warn about unsuffixed float constants 751 752Wunused 753C ObjC C++ ObjC++ LangEnabledBy(C ObjC C++ ObjC++,Wall) 754; documented in common.opt 755 756Wunused-local-typedefs 757C ObjC C++ ObjC++ Var(warn_unused_local_typedefs) Warning EnabledBy(Wunused) 758Warn when typedefs locally defined in a function are not used 759 760Wunused-macros 761C ObjC C++ ObjC++ Var(cpp_warn_unused_macros) Warning 762Warn about macros defined in the main file that are not used 763 764Wunused-result 765C ObjC C++ ObjC++ Var(warn_unused_result) Init(1) Warning 766Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value 767 768Wvariadic-macros 769C ObjC C++ ObjC++ Var(cpp_warn_variadic_macros) Init(1) Warning 770Warn about using variadic macros 771 772Wvarargs 773C ObjC C++ ObjC++ Warning Var(warn_varargs) Init(1) 774Warn about questionable usage of the macros used to retrieve variable arguments 775 776Wvla 777C ObjC C++ ObjC++ Var(warn_vla) Init(-1) Warning 778Warn if a variable length array is used 779 780Wvolatile-register-var 781C ObjC C++ ObjC++ Var(warn_volatile_register_var) Warning LangEnabledBy(C ObjC C++ ObjC++,Wall) 782Warn when a register variable is declared volatile 783 784Wvirtual-move-assign 785C++ ObjC++ Var(warn_virtual_move_assign) Warning Init(1) 786Warn if a virtual base has a non-trivial move assignment operator 787 788Wwrite-strings 789C ObjC C++ ObjC++ Var(warn_write_strings) Warning 790In 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. 791 792Wzero-as-null-pointer-constant 793C++ ObjC++ Var(warn_zero_as_null_pointer_constant) Warning 794Warn when a literal '0' is used as null pointer 795 796Wuseless-cast 797C++ ObjC++ Var(warn_useless_cast) Warning 798Warn about useless casts 799 800ansi 801C ObjC C++ ObjC++ 802A synonym for -std=c89 (for C) or -std=c++98 (for C++) 803 804; This should really just be C++/ObjC++ but we (NetBSD) use it when 805; calling C and ObjC compilers as well. 806cxx-isystem 807C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 808-cxx-isystem <dir> Add <dir> to the start of the C++ system include path 809 810d 811C ObjC C++ ObjC++ Joined 812; Documented in common.opt. FIXME - what about -dI, -dD, -dN and -dD? 813 814faccess-control 815C++ ObjC++ Var(flag_access_control) Init(1) 816Enforce class member access control semantics 817 818fada-spec-parent= 819C ObjC C++ ObjC++ RejectNegative Joined Var(ada_specs_parent) 820-fada-spec-parent=unit Dump Ada specs as child units of given parent 821 822fall-virtual 823C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 824 825fallow-parameterless-variadic-functions 826C ObjC Var(flag_allow_parameterless_variadic_functions) 827Allow variadic functions without named parameter 828 829falt-external-templates 830C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 831No longer supported 832 833fasm 834C ObjC C++ ObjC++ Var(flag_no_asm, 0) 835Recognize the \"asm\" keyword 836 837; Define extra predefined macros for use in libgcc. 838fbuilding-libgcc 839C ObjC C++ ObjC++ Undocumented Var(flag_building_libgcc) 840 841fbuiltin 842C ObjC C++ ObjC++ Var(flag_no_builtin, 0) 843Recognize built-in functions 844 845fbuiltin- 846C ObjC C++ ObjC++ Joined 847 848fcanonical-system-headers 849C ObjC C++ ObjC++ 850Where shorter, use canonicalized paths to systems headers. 851 852fcheck-new 853C++ ObjC++ Var(flag_check_new) 854Check the return value of new 855 856fcond-mismatch 857C ObjC C++ ObjC++ 858Allow the arguments of the '?' operator to have different types 859 860fconserve-space 861C++ ObjC++ Var(flag_conserve_space) 862Does nothing. Preserved for backward compatibility. 863 864fconstant-string-class= 865ObjC ObjC++ Joined MissingArgError(no class name specified with %qs) 866-fconst-string-class=<name> Use class <name> for constant strings 867 868fconstexpr-depth= 869C++ ObjC++ Joined RejectNegative UInteger Var(max_constexpr_depth) Init(512) 870-fconstexpr-depth=<number> Specify maximum constexpr recursion depth 871 872fdebug-cpp 873C ObjC C++ ObjC++ 874Emit debug annotations during preprocessing 875 876fdeduce-init-list 877C++ ObjC++ Var(flag_deduce_init_list) Init(0) 878-fdeduce-init-list enable deduction of std::initializer_list for a template type parameter from a brace-enclosed initializer-list 879 880fdefault-inline 881C++ ObjC++ Ignore 882Does nothing. Preserved for backward compatibility. 883 884fdirectives-only 885C ObjC C++ ObjC++ 886Preprocess directives only. 887 888fdollars-in-identifiers 889C ObjC C++ ObjC++ 890Permit '$' as an identifier character 891 892fdump-ada-spec 893C ObjC C++ ObjC++ RejectNegative Var(flag_dump_ada_spec) 894Write all declarations as Ada code transitively 895 896fdump-ada-spec-slim 897C ObjC C++ ObjC++ RejectNegative Var(flag_dump_ada_spec_slim) 898Write all declarations as Ada code for the given file only 899 900felide-constructors 901C++ ObjC++ Var(flag_elide_constructors) Init(1) 902 903fenforce-eh-specs 904C++ ObjC++ Var(flag_enforce_eh_specs) Init(1) 905Generate code to check exception specifications 906 907fenum-int-equiv 908C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 909 910fexec-charset= 911C ObjC C++ ObjC++ Joined RejectNegative 912-fexec-charset=<cset> Convert all strings and character constants to character set <cset> 913 914fextended-identifiers 915C ObjC C++ ObjC++ 916Permit universal character names (\\u and \\U) in identifiers 917 918finput-charset= 919C ObjC C++ ObjC++ Joined RejectNegative 920-finput-charset=<cset> Specify the default character set for source files 921 922fextern-tls-init 923C++ ObjC++ Var(flag_extern_tls_init) Init(-1) 924Support dynamic initialization of thread-local variables in a different translation unit 925 926fexternal-templates 927C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 928 929ffor-scope 930C++ ObjC++ Var(flag_new_for_scope) Init(1) 931Scope of for-init-statement variables is local to the loop 932 933ffreestanding 934C ObjC C++ ObjC++ 935Do not assume that standard C libraries and \"main\" exist 936 937fgnu-keywords 938C++ ObjC++ Var(flag_no_gnu_keywords, 0) 939Recognize GNU-defined keywords 940 941fgnu-runtime 942ObjC ObjC++ LTO Report RejectNegative Var(flag_next_runtime,0) Init(NEXT_OBJC_RUNTIME) 943Generate code for GNU runtime environment 944 945fgnu89-inline 946C ObjC Var(flag_gnu89_inline) Init(-1) 947Use traditional GNU semantics for inline functions 948 949fguiding-decls 950C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 951 952fhandle-exceptions 953C++ ObjC++ Optimization Alias(fexceptions) Warn({-fhandle-exceptions has been renamed -fexceptions (and is now on by default)}) 954 955fhonor-std 956C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 957 958fhosted 959C ObjC 960Assume normal C execution environment 961 962fhuge-objects 963C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 964No longer supported 965 966fimplement-inlines 967C++ ObjC++ Var(flag_implement_inlines) Init(1) 968Export functions even if they can be inlined 969 970fimplicit-inline-templates 971C++ ObjC++ Var(flag_implicit_inline_templates) Init(1) 972Emit implicit instantiations of inline templates 973 974fimplicit-templates 975C++ ObjC++ Var(flag_implicit_templates) Init(1) 976Emit implicit instantiations of templates 977 978ffriend-injection 979C++ ObjC++ Var(flag_friend_injection) 980Inject friend functions into enclosing namespace 981 982fkeep-inline-dllexport 983C C++ ObjC ObjC++ Var(flag_keep_inline_dllexport) Init(1) Report Condition(TARGET_DLLIMPORT_DECL_ATTRIBUTES) 984Don't emit dllexported inline functions unless needed 985 986flabels-ok 987C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 988 989flax-vector-conversions 990C ObjC C++ ObjC++ Var(flag_lax_vector_conversions) 991Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types. 992 993fms-extensions 994C ObjC C++ ObjC++ Var(flag_ms_extensions) 995Don't warn about uses of Microsoft extensions 996 997fmudflap 998C ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap) 999Add mudflap bounds-checking instrumentation for single-threaded program 1000 1001fmudflapth 1002C ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap,2) 1003Add mudflap bounds-checking instrumentation for multi-threaded program 1004 1005fmudflapir 1006C ObjC C++ ObjC++ RejectNegative Report Var(flag_mudflap_ignore_reads) 1007Ignore read operations when inserting mudflap instrumentation 1008 1009fname-mangling-version- 1010C++ ObjC++ Joined Ignore Warn(switch %qs is no longer supported) 1011 1012fnew-abi 1013C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1014 1015fnext-runtime 1016ObjC ObjC++ LTO Report RejectNegative Var(flag_next_runtime) 1017Generate code for NeXT (Apple Mac OS X) runtime environment 1018 1019fnil-receivers 1020ObjC ObjC++ Var(flag_nil_receivers) Init(1) 1021Assume that receivers of Objective-C messages may be nil 1022 1023fnonansi-builtins 1024C++ ObjC++ Var(flag_no_nonansi_builtin, 0) 1025 1026fnonnull-objects 1027C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1028 1029fnothrow-opt 1030C++ ObjC++ Optimization Var(flag_nothrow_opt) 1031Treat a throw() exception specification as noexcept to improve code size 1032 1033fobjc-abi-version= 1034ObjC ObjC++ LTO Joined Report RejectNegative UInteger Var(flag_objc_abi) 1035Specify which ABI to use for Objective-C family code and meta-data generation. 1036 1037; Generate special '- .cxx_construct' and '- .cxx_destruct' methods 1038; to initialize any non-POD ivars in Objective-C++ classes. 1039fobjc-call-cxx-cdtors 1040ObjC++ Var(flag_objc_call_cxx_cdtors) 1041Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed 1042 1043fobjc-direct-dispatch 1044ObjC ObjC++ Var(flag_objc_direct_dispatch) 1045Allow fast jumps to the message dispatcher 1046 1047; Nonzero means that we will allow new ObjC exception syntax (@throw, 1048; @try, etc.) in source code. 1049fobjc-exceptions 1050ObjC ObjC++ Var(flag_objc_exceptions) 1051Enable Objective-C exception and synchronization syntax 1052 1053fobjc-gc 1054ObjC ObjC++ LTO Var(flag_objc_gc) 1055Enable garbage collection (GC) in Objective-C/Objective-C++ programs 1056 1057fobjc-nilcheck 1058ObjC ObjC++ Var(flag_objc_nilcheck,1) 1059Enable inline checks for nil receivers with the NeXT runtime and ABI version 2. 1060 1061; Nonzero means that we generate NeXT setjmp based exceptions. 1062fobjc-sjlj-exceptions 1063ObjC ObjC++ Var(flag_objc_sjlj_exceptions) Init(-1) 1064Enable Objective-C setjmp exception handling runtime 1065 1066fobjc-std=objc1 1067ObjC ObjC++ Var(flag_objc1_only) 1068Conform to the Objective-C 1.0 language as implemented in GCC 4.0 1069 1070fopenmp 1071C ObjC C++ ObjC++ Var(flag_openmp) 1072Enable OpenMP (implies -frecursive in Fortran) 1073 1074foperator-names 1075C++ ObjC++ 1076Recognize C++ keywords like \"compl\" and \"xor\" 1077 1078foptional-diags 1079C++ ObjC++ Ignore 1080Does nothing. Preserved for backward compatibility. 1081 1082fpch-deps 1083C ObjC C++ ObjC++ 1084 1085fpch-preprocess 1086C ObjC C++ ObjC++ 1087Look for and use PCH files even when preprocessing 1088 1089fpermissive 1090C++ ObjC++ Var(flag_permissive) 1091Downgrade conformance errors to warnings 1092 1093fplan9-extensions 1094C ObjC Var(flag_plan9_extensions) 1095Enable Plan 9 language extensions 1096 1097fpreprocessed 1098C ObjC C++ ObjC++ 1099Treat the input file as already preprocessed 1100 1101ftrack-macro-expansion 1102C ObjC C++ ObjC++ JoinedOrMissing RejectNegative UInteger 1103; converted into ftrack-macro-expansion= 1104 1105ftrack-macro-expansion= 1106C ObjC C++ ObjC++ JoinedOrMissing RejectNegative UInteger 1107-ftrack-macro-expansion=<0|1|2> Track locations of tokens coming from macro expansion and display them in error messages 1108 1109fpretty-templates 1110C++ ObjC++ Var(flag_pretty_templates) Init(1) 1111-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments 1112 1113freplace-objc-classes 1114ObjC ObjC++ LTO Var(flag_replace_objc_classes) 1115Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime 1116 1117frepo 1118C++ ObjC++ 1119Enable automatic template instantiation 1120 1121frtti 1122C++ ObjC++ Optimization Var(flag_rtti) Init(1) 1123Generate run time type descriptor information 1124 1125fshort-double 1126C ObjC C++ ObjC++ Optimization Var(flag_short_double) 1127Use the same size for double as for float 1128 1129fshort-enums 1130C ObjC C++ ObjC++ Optimization Var(flag_short_enums) 1131Use the narrowest integer type possible for enumeration types 1132 1133fshort-wchar 1134C ObjC C++ ObjC++ Optimization Var(flag_short_wchar) 1135Force the underlying type for \"wchar_t\" to be \"unsigned short\" 1136 1137fsigned-bitfields 1138C ObjC C++ ObjC++ Var(flag_signed_bitfields) Init(1) 1139When \"signed\" or \"unsigned\" is not given make the bitfield signed 1140 1141fsigned-char 1142C ObjC C++ ObjC++ LTO Var(flag_signed_char) 1143Make \"char\" signed by default 1144 1145fsquangle 1146C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1147 1148fstats 1149C++ ObjC++ Var(flag_detailed_statistics) 1150Display statistics accumulated during compilation 1151 1152fstrict-enums 1153C++ ObjC++ Optimization Var(flag_strict_enums) 1154Assume that values of enumeration type are always within the minimum range of that type 1155 1156fstrict-prototype 1157C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1158 1159ftabstop= 1160C ObjC C++ ObjC++ Joined RejectNegative UInteger 1161-ftabstop=<number> Distance between tab stops for column reporting 1162 1163ftemplate-backtrace-limit= 1164C++ ObjC++ Joined RejectNegative UInteger Var(template_backtrace_limit) Init(10) 1165Set the maximum number of template instantiation notes for a single warning or error 1166 1167ftemplate-depth- 1168C++ ObjC++ Joined RejectNegative Undocumented Alias(ftemplate-depth=) 1169 1170ftemplate-depth= 1171C++ ObjC++ Joined RejectNegative UInteger 1172-ftemplate-depth=<number> Specify maximum template instantiation depth 1173 1174fthis-is-variable 1175C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1176 1177fthreadsafe-statics 1178C++ ObjC++ Optimization Var(flag_threadsafe_statics) Init(1) 1179-fno-threadsafe-statics Do not generate thread-safe code for initializing local statics 1180 1181funsigned-bitfields 1182C ObjC C++ ObjC++ Var(flag_signed_bitfields, 0) 1183When \"signed\" or \"unsigned\" is not given make the bitfield unsigned 1184 1185funsigned-char 1186C ObjC C++ ObjC++ LTO Var(flag_signed_char, 0) 1187Make \"char\" unsigned by default 1188 1189fuse-cxa-atexit 1190C++ ObjC++ Var(flag_use_cxa_atexit) Init(DEFAULT_USE_CXA_ATEXIT) 1191Use __cxa_atexit to register destructors 1192 1193fuse-cxa-get-exception-ptr 1194C++ ObjC++ Var(flag_use_cxa_get_exception_ptr) Init(2) 1195Use __cxa_get_exception_ptr in exception handling 1196 1197fvisibility-inlines-hidden 1198C++ ObjC++ 1199Marks all inlined functions and methods as having hidden visibility 1200 1201fvisibility-ms-compat 1202C++ ObjC++ Var(flag_visibility_ms_compat) 1203Changes visibility to match Microsoft Visual Studio by default 1204 1205fvtable-gc 1206C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1207No longer supported 1208 1209fvtable-thunks 1210C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1211No longer supported 1212 1213fweak 1214C++ ObjC++ Var(flag_weak) Init(1) 1215Emit common-like symbols as weak symbols 1216 1217fwide-exec-charset= 1218C ObjC C++ ObjC++ Joined RejectNegative 1219-fwide-exec-charset=<cset> Convert all wide strings and character constants to character set <cset> 1220 1221fworking-directory 1222C ObjC C++ ObjC++ Var(flag_working_directory) Init(-1) 1223Generate a #line directive pointing at the current working directory 1224 1225fxref 1226C++ ObjC++ Ignore Warn(switch %qs is no longer supported) 1227No longer supported 1228 1229fzero-link 1230ObjC ObjC++ Var(flag_zero_link) 1231Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode 1232 1233gen-decls 1234ObjC ObjC++ Var(flag_gen_declaration) 1235Dump declarations to a .decl file 1236 1237femit-struct-debug-baseonly 1238C ObjC C++ ObjC++ 1239-femit-struct-debug-baseonly Aggressive reduced debug info for structs 1240 1241femit-struct-debug-reduced 1242C ObjC C++ ObjC++ 1243-femit-struct-debug-reduced Conservative reduced debug info for structs 1244 1245femit-struct-debug-detailed= 1246C ObjC C++ ObjC++ Joined 1247-femit-struct-debug-detailed=<spec-list> Detailed reduced debug info for structs 1248 1249fext-numeric-literals 1250C++ ObjC++ 1251Interpret imaginary, fixed-point, or other gnu number suffix as the corresponding 1252number literal rather than a user-defined number literal. 1253 1254idirafter 1255C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 1256-idirafter <dir> Add <dir> to the end of the system include path 1257 1258imacros 1259C ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs) 1260-imacros <file> Accept definition of macros in <file> 1261 1262imultilib 1263C ObjC C++ ObjC++ Joined Separate 1264-imultilib <dir> Set <dir> to be the multilib include subdirectory 1265 1266include 1267C ObjC C++ ObjC++ Joined Separate MissingArgError(missing filename after %qs) 1268-include <file> Include the contents of <file> before other files 1269 1270iprefix 1271C ObjC C++ ObjC++ Joined Separate 1272-iprefix <path> Specify <path> as a prefix for next two options 1273 1274isysroot 1275C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 1276-isysroot <dir> Set <dir> to be the system root directory 1277 1278isystem 1279C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 1280-isystem <dir> Add <dir> to the start of the system include path 1281 1282iquote 1283C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 1284-iquote <dir> Add <dir> to the end of the quote include path 1285 1286iremap 1287C ObjC C++ ObjC++ Joined Separate MissingArgError(missing path after %qs) 1288-iremap <src:dst> Convert <src> to <dst> if it occurs as prefix in __FILE__. 1289 1290iwithprefix 1291C ObjC C++ ObjC++ Joined Separate 1292-iwithprefix <dir> Add <dir> to the end of the system include path 1293 1294iwithprefixbefore 1295C ObjC C++ ObjC++ Joined Separate 1296-iwithprefixbefore <dir> Add <dir> to the end of the main include path 1297 1298lang-asm 1299C Undocumented RejectDriver 1300 1301no-integrated-cpp 1302Driver 1303 1304nostdinc 1305C ObjC C++ ObjC++ 1306Do not search standard system include directories (those specified with -isystem will still be used) 1307 1308nostdinc++ 1309C++ ObjC++ 1310Do not search standard system include directories for C++ 1311 1312o 1313C ObjC C++ ObjC++ Joined Separate 1314; Documented in common.opt 1315 1316pedantic 1317C ObjC C++ ObjC++ Alias(Wpedantic) 1318; Documented in common.opt 1319 1320print-objc-runtime-info 1321ObjC ObjC++ 1322Generate C header of platform-specific features 1323 1324remap 1325C ObjC C++ ObjC++ 1326Remap file names when including files 1327 1328std=c++98 1329C++ ObjC++ 1330Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum 1331 1332std=c++03 1333C++ ObjC++ Alias(std=c++98) 1334Conform to the ISO 1998 C++ standard revised by the 2003 technical corrigendum 1335 1336std=c++11 1337C++ ObjC++ 1338Conform to the ISO 2011 C++ standard (experimental and incomplete support) 1339 1340std=c++0x 1341C++ ObjC++ Alias(std=c++11) 1342Deprecated in favor of -std=c++11 1343 1344std=c++1y 1345C++ ObjC++ 1346Conform to the ISO 201y(7?) C++ draft standard (experimental and incomplete support) 1347 1348std=c11 1349C ObjC 1350Conform to the ISO 2011 C standard (experimental and incomplete support) 1351 1352std=c1x 1353C ObjC Alias(std=c11) 1354Deprecated in favor of -std=c11 1355 1356std=c89 1357C ObjC Alias(std=c90) 1358Conform to the ISO 1990 C standard 1359 1360std=c90 1361C ObjC 1362Conform to the ISO 1990 C standard 1363 1364std=c99 1365C ObjC 1366Conform to the ISO 1999 C standard 1367 1368std=c9x 1369C ObjC Alias(std=c99) 1370Deprecated in favor of -std=c99 1371 1372std=gnu++98 1373C++ ObjC++ 1374Conform to the ISO 1998 C++ standard revised by the 2003 technical 1375corrigendum with GNU extensions 1376 1377std=gnu++03 1378C++ ObjC++ Alias(std=gnu++98) 1379Conform to the ISO 1998 C++ standard revised by the 2003 technical 1380corrigendum with GNU extensions 1381 1382std=gnu++11 1383C++ ObjC++ 1384Conform to the ISO 2011 C++ standard with GNU extensions (experimental and incomplete support) 1385 1386std=gnu++0x 1387C++ ObjC++ Alias(std=gnu++11) 1388Deprecated in favor of -std=gnu++11 1389 1390std=gnu++1y 1391C++ ObjC++ 1392Conform to the ISO 201y(7?) C++ draft standard with GNU extensions (experimental and incomplete support) 1393 1394std=gnu11 1395C ObjC 1396Conform to the ISO 2011 C standard with GNU extensions (experimental and incomplete support) 1397 1398std=gnu1x 1399C ObjC Alias(std=gnu11) 1400Deprecated in favor of -std=gnu11 1401 1402std=gnu89 1403C ObjC Alias(std=gnu90) 1404Conform to the ISO 1990 C standard with GNU extensions 1405 1406std=gnu90 1407C ObjC 1408Conform to the ISO 1990 C standard with GNU extensions 1409 1410std=gnu99 1411C ObjC 1412Conform to the ISO 1999 C standard with GNU extensions 1413 1414std=gnu9x 1415C ObjC Alias(std=gnu99) 1416Deprecated in favor of -std=gnu99 1417 1418std=iso9899:1990 1419C ObjC Alias(std=c90) 1420Conform to the ISO 1990 C standard 1421 1422std=iso9899:199409 1423C ObjC 1424Conform to the ISO 1990 C standard as amended in 1994 1425 1426std=iso9899:1999 1427C ObjC Alias(std=c99) 1428Conform to the ISO 1999 C standard 1429 1430std=iso9899:199x 1431C ObjC Alias(std=c99) 1432Deprecated in favor of -std=iso9899:1999 1433 1434std=iso9899:2011 1435C ObjC Alias(std=c11) 1436Conform to the ISO 2011 C standard (experimental and incomplete support) 1437 1438traditional 1439Driver 1440 1441traditional-cpp 1442C ObjC C++ ObjC++ 1443Enable traditional preprocessing 1444 1445trigraphs 1446C ObjC C++ ObjC++ 1447-trigraphs Support ISO C trigraphs 1448 1449undef 1450C ObjC C++ ObjC++ Var(flag_undef) 1451Do not predefine system-specific and GCC-specific macros 1452 1453v 1454C ObjC C++ ObjC++ 1455; Documented in common.opt 1456 1457w 1458C ObjC C++ ObjC++ 1459; Documented in common.opt 1460 1461; This comment is to ensure we retain the blank line above. 1462