* dwarf2out.c (file_table_last_lookup): Move this GC'd declaration
[official-gcc.git] / gcc / c.opt
blob12510d9697f452b789c3df750cab09306c6e1493
1 ; Options for the C, ObjC, C++ and ObjC++ front ends.
2 ; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc.
4 ; This file is part of GCC.
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 2, or (at your option) any later
9 ; version.
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.
16 ; You should have received a copy of the GNU General Public License
17 ; along with GCC; see the file COPYING.  If not, write to the Free
18 ; Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
19 ; 02110-1301, USA.
21 ; See the GCC internals manual for a description of this file's format.
23 ; Please try to keep this file in ASCII collating order.
25 Language
28 Language
29 ObjC
31 Language
32 C++
34 Language
35 ObjC++
37 -output-pch=
38 C ObjC C++ ObjC++ Joined Separate
41 C ObjC C++ ObjC++ Joined Separate
42 -A<question>=<answer>   Assert the <answer> to <question>.  Putting '-' before <question> disables the <answer> to <question>
45 C ObjC C++ ObjC++
46 Do not discard comments
49 C ObjC C++ ObjC++
50 Do not discard comments in macro expansions
53 C ObjC C++ ObjC++ Joined Separate
54 -D<macro>[=<val>]       Define a <macro> with <val> as its value.  If just <macro> is given, <val> is taken to be 1
57 C ObjC C++ ObjC++ Undocumented
60 C ObjC C++ ObjC++ Joined Separate
61 -F <dir>        Add <dir> to the end of the main framework include path
64 C ObjC C++ ObjC++
65 Print the name of header files as they are used
68 C ObjC C++ ObjC++ Joined Separate
69 -I <dir>        Add <dir> to the end of the main include path
72 C ObjC C++ ObjC++
73 Generate make dependencies
76 C ObjC C++ ObjC++ Separate
77 Generate make dependencies and compile
80 C ObjC C++ ObjC++ Joined Separate
81 -MF <file>      Write dependency output to the given file
84 C ObjC C++ ObjC++
85 Treat missing header files as generated files
88 C ObjC C++ ObjC++
89 Like -M but ignore system header files
91 MMD
92 C ObjC C++ ObjC++ Separate
93 Like -MD but ignore system header files
96 C ObjC C++ ObjC++
97 Generate phony targets for all headers
100 C ObjC C++ ObjC++ Joined Separate
101 -MQ <target>    Add a MAKE-quoted target
104 C ObjC C++ ObjC++ Joined Separate
105 -MT <target>    Add an unquoted target
108 C ObjC C++ ObjC++
109 Do not generate #line directives
112 C ObjC C++ ObjC++ Joined Separate
113 -U<macro>       Undefine <macro>
115 Wabi
116 C++ ObjC++ Var(warn_abi)
117 Warn about things that will change when compiling with an ABI-compliant compiler
119 Wall
120 C ObjC C++ ObjC++
121 Enable most warning messages
123 Wassign-intercept
124 ObjC ObjC++ Var(warn_assign_intercept)
125 Warn whenever an Objective-C assignment is being intercepted by the garbage collector
127 Wbad-function-cast
128 C ObjC Var(warn_bad_function_cast)
129 Warn about casting functions to incompatible types
131 Wc++-compat
132 C Var(warn_cxx_compat)
133 Warn about C constructs that are not in the common subset of C and C++
136 Wcast-qual
137 C ObjC C++ ObjC++ Var(warn_cast_qual)
138 Warn about casts which discard qualifiers
140 Wchar-subscripts
141 C ObjC C++ ObjC++ Var(warn_char_subscripts)
142 Warn about subscripts whose type is \"char\"
144 Wcomment
145 C ObjC C++ ObjC++
146 Warn about possibly nested block comments, and C++ comments spanning more than one physical line
148 Wcomments
149 C ObjC C++ ObjC++
150 Synonym for -Wcomment
152 Wconversion
153 C ObjC C++ ObjC++ Var(warn_conversion)
154 Warn about possibly confusing type conversions
156 Wctor-dtor-privacy
157 C++ ObjC++ Var(warn_ctor_dtor_privacy)
158 Warn when all constructors and destructors are private
160 Wdeclaration-after-statement
161 C ObjC Var(warn_declaration_after_statement)
162 Warn when a declaration is found after a statement
164 Wdeprecated
165 C++ ObjC++ Var(warn_deprecated) Init(1)
166 Warn about deprecated compiler features
168 Wdiv-by-zero
169 C ObjC C++ Var(warn_div_by_zero) Init(1)
170 Warn about compile-time integer division by zero
172 Weffc++
173 C++ ObjC++ Var(warn_ecpp)
174 Warn about violations of Effective C++ style rules
176 Wendif-labels
177 C ObjC C++ ObjC++
178 Warn about stray tokens after #elif and #endif
180 Werror
181 C ObjC C++ ObjC++
182 ; Documented in common.opt
184 Werror-implicit-function-declaration
185 C ObjC RejectNegative
186 Make implicit function declarations an error
188 Wfloat-equal
189 C ObjC C++ ObjC++ Var(warn_float_equal)
190 Warn if testing floating point numbers for equality
192 Wformat
193 C ObjC C++ ObjC++
194 Warn about printf/scanf/strftime/strfmon format string anomalies
196 Wformat-extra-args
197 C ObjC C++ ObjC++ Var(warn_format_extra_args)
198 Warn if passing too many arguments to a function for its format string
200 Wformat-nonliteral
201 C ObjC C++ ObjC++ Var(warn_format_nonliteral)
202 Warn about format strings that are not literals
204 Wformat-security
205 C ObjC C++ ObjC++ Var(warn_format_security)
206 Warn about possible security problems with format functions
208 Wformat-y2k
209 C ObjC C++ ObjC++ Var(warn_format_y2k)
210 Warn about strftime formats yielding 2-digit years
212 Wformat-zero-length
213 C ObjC Var(warn_format_zero_length)
214 Warn about zero-length formats
216 Wformat=
217 C ObjC C++ ObjC++ Joined
219 Winit-self
220 C ObjC C++ ObjC++ Var(warn_init_self)
221 Warn about variables which are initialized to themselves
223 Wimplicit
224 C ObjC C++ ObjC++
226 Wimplicit-function-declaration
227 C ObjC Var(mesg_implicit_function_declaration) Init(-1)
228 Warn about implicit function declarations
230 Wimplicit-int
231 C ObjC Var(warn_implicit_int)
232 Warn when a declaration does not specify a type
234 Wimport
235 C ObjC C++ ObjC++
236 Deprecated.  This switch has no effect
238 Wint-to-pointer-cast
239 C ObjC Var(warn_int_to_pointer_cast) Init(1)
240 Warn when there is a cast to a pointer from an integer of a different size
242 Winvalid-offsetof
243 C++ ObjC++ Var(warn_invalid_offsetof) Init(1)
244 Warn about invalid uses of the \"offsetof\" macro
246 Winvalid-pch
247 C ObjC C++ ObjC++
248 Warn about PCH files that are found but not used
250 Wlong-long
251 C ObjC C++ ObjC++ Var(warn_long_long) Init(1)
252 Do not warn about using \"long long\" when -pedantic
254 Wmain
255 C ObjC
256 Warn about suspicious declarations of \"main\"
258 Wmissing-braces
259 C ObjC C++ ObjC++ Var(warn_missing_braces)
260 Warn about possibly missing braces around initializers
262 Wmissing-declarations
263 C ObjC Var(warn_missing_declarations)
264 Warn about global functions without previous declarations
266 Wmissing-field-initializers
267 C ObjC C++ ObjC++ Var(warn_missing_field_initializers) Init(-1)
268 Warn about missing fields in struct initializers
270 Wmissing-format-attribute
271 C ObjC C++ ObjC++ Var(warn_missing_format_attribute)
272 Warn about functions which might be candidates for format attributes
274 Wmissing-include-dirs
275 C ObjC C++ ObjC++
276 Warn about user-specified include directories that do not exist
278 Wmissing-prototypes
279 C ObjC Var(warn_missing_prototypes)
280 Warn about global functions without prototypes
282 Wmultichar
283 C ObjC C++ ObjC++
284 Warn about use of multi-character character constants
286 Wnested-externs
287 C ObjC Var(warn_nested_externs)
288 Warn about \"extern\" declarations not at file scope
290 Wnon-template-friend
291 C++ ObjC++ Var(warn_nontemplate_friend) Init(1)
292 Warn when non-templatized friend functions are declared within a template
294 Wnon-virtual-dtor
295 C++ ObjC++ Var(warn_nonvdtor)
296 Warn about non-virtual destructors
298 Wnonnull
299 C ObjC Var(warn_nonnull)
300 Warn about NULL being passed to argument slots marked as requiring non-NULL
302 Wnormalized=
303 C ObjC C++ ObjC++ Joined
304 -Wnormalized=<id|nfc|nfkc>      Warn about non-normalised Unicode strings
306 Wold-style-cast
307 C++ ObjC++ Var(warn_old_style_cast)
308 Warn if a C-style cast is used in a program
310 Wold-style-definition
311 C ObjC Var(warn_old_style_definition)
312 Warn if an old-style parameter definition is used
314 Woverlength-strings
315 C ObjC C++ ObjC++ Var(warn_overlength_strings) Init(-1)
316 Warn if a string is longer than the maximum portable length specified by the standard
318 Woverloaded-virtual
319 C++ ObjC++ Var(warn_overloaded_virtual)
320 Warn about overloaded virtual function names
322 Wparentheses
323 C ObjC C++ ObjC++ Var(warn_parentheses)
324 Warn about possibly missing parentheses
326 Wpmf-conversions
327 C++ ObjC++ Var(warn_pmf2ptr) Init(1)
328 Warn when converting the type of pointers to member functions
330 Wpointer-arith
331 C ObjC C++ ObjC++ Var(warn_pointer_arith)
332 Warn about function pointer arithmetic
334 Wpointer-to-int-cast
335 C ObjC Var(warn_pointer_to_int_cast) Init(1)
336 Warn when a pointer is cast to an integer of a different size
338 Wpragmas
339 C ObjC C++ ObjC++ Var(warn_pragmas) Init(1)
340 Warn about misuses of pragmas
342 Wprotocol
343 ObjC ObjC++ Var(warn_protocol) Init(1)
344 Warn if inherited methods are unimplemented
346 Wredundant-decls
347 C ObjC C++ ObjC++ Var(warn_redundant_decls)
348 Warn about multiple declarations of the same object
350 Wreorder
351 C++ ObjC++ Var(warn_reorder)
352 Warn when the compiler reorders code
354 Wreturn-type
355 C ObjC C++ ObjC++ Var(warn_return_type)
356 Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)
358 Wselector
359 ObjC ObjC++ Var(warn_selector)
360 Warn if a selector has multiple methods
362 Wsequence-point
363 C ObjC C++ ObjC++ Var(warn_sequence_point)
364 Warn about possible violations of sequence point rules
366 Wsign-compare
367 C ObjC C++ ObjC++ Var(warn_sign_compare) Init(-1)
368 Warn about signed-unsigned comparisons
370 Wsign-promo
371 C++ ObjC++ Var(warn_sign_promo)
372 Warn when overload promotes from unsigned to signed
374 Wstrict-null-sentinel
375 C++ ObjC++
376 Warn about uncasted NULL used as sentinel
378 Wstrict-prototypes
379 C ObjC Var(warn_strict_prototypes)
380 Warn about unprototyped function declarations
382 Wstrict-selector-match
383 ObjC ObjC++ Var(warn_strict_selector_match)
384 Warn if type signatures of candidate methods do not match exactly
386 Wsynth
387 C++ ObjC++ Var(warn_synth)
388 Warn when synthesis behavior differs from Cfront
390 Wsystem-headers
391 C ObjC C++ ObjC++
392 Do not suppress warnings from system headers
394 Wtraditional
395 C ObjC Var(warn_traditional)
396 Warn about features not present in traditional C
398 Wtrigraphs
399 C ObjC C++ ObjC++
400 Warn if trigraphs are encountered that might affect the meaning of the program
402 Wundeclared-selector
403 ObjC ObjC++ Var(warn_undeclared_selector)
404 Warn about @selector()s without previously declared methods
406 Wundef
407 C ObjC C++ ObjC++
408 Warn if an undefined macro is used in an #if directive
410 Wunknown-pragmas
411 C ObjC C++ ObjC++
412 Warn about unrecognized pragmas
414 Wunused-macros
415 C ObjC C++ ObjC++
416 Warn about macros defined in the main file that are not used
418 Wvariadic-macros
419 C ObjC C++ ObjC++
420 Do not warn about using variadic macros when -pedantic
422 Wwrite-strings
423 C ObjC C++ ObjC++ Var(warn_write_strings)
424 In C++, nonzero means warn about deprecated conversion from string literals to `char *'.  In C, similar warning, except that the conversion is of course not deprecated by the ISO C standard.
426 Wpointer-sign
427 C ObjC Var(warn_pointer_sign) Init(-1)
428 Warn when a pointer differs in signedness in an assignment
430 ansi
431 C ObjC C++ ObjC++
432 A synonym for -std=c89 (for C) or -std=c++98 (for C++)
435 C ObjC C++ ObjC++ Joined
436 ; Documented in common.opt.  FIXME - what about -dI, -dD, -dN and -dD?
438 faccess-control
439 C++ ObjC++
440 Enforce class member access control semantics
442 fall-virtual
443 C++ ObjC++
445 falt-external-templates
446 C++ ObjC++
447 Change when template instances are emitted
449 fasm
450 C ObjC C++ ObjC++
451 Recognize the \"asm\" keyword
453 fbuiltin
454 C ObjC C++ ObjC++
455 Recognize built-in functions
457 fbuiltin-
458 C ObjC C++ ObjC++ Joined
460 fcheck-new
461 C++ ObjC++
462 Check the return value of new
464 fcond-mismatch
465 C ObjC C++ ObjC++
466 Allow the arguments of the '?' operator to have different types
468 fconserve-space
469 C++ ObjC++
470 Reduce the size of object files
472 fconstant-string-class=
473 ObjC ObjC++ Joined
474 -fconst-string-class=<name>     Use class <name> for constant strings
476 fdefault-inline
477 C++ ObjC++
478 Inline member functions by default
480 fdollars-in-identifiers
481 C ObjC C++ ObjC++
482 Permit '$' as an identifier character
484 felide-constructors
485 C++ ObjC++
487 fenforce-eh-specs
488 C++ ObjC++
489 Generate code to check exception specifications
491 fenum-int-equiv
492 C++ ObjC++
494 fexec-charset=
495 C ObjC C++ ObjC++ Joined RejectNegative
496 -fexec-charset=<cset>   Convert all strings and character constants to character set <cset>
498 fextended-identifiers
499 C ObjC C++ ObjC++
500 Permit universal character names (\\u and \\U) in identifiers
502 finput-charset=
503 C ObjC C++ ObjC++ Joined RejectNegative
504 -finput-charset=<cset>  Specify the default character set for source files
507 fexternal-templates
508 C++ ObjC++
510 ffixed-form
511 C ObjC
513 ffixed-line-length-none
514 C ObjC
516 ffixed-line-length-
517 C ObjC Joined
519 ffor-scope
520 C++ ObjC++
521 Scope of for-init-statement variables is local to the loop
523 ffreestanding
524 C ObjC
525 Do not assume that standard C libraries and \"main\" exist
527 fgnu-keywords
528 C++ ObjC++
529 Recognize GNU-defined keywords
531 fgnu-runtime
532 ObjC ObjC++
533 Generate code for GNU runtime environment
535 fguiding-decls
536 C++ ObjC++
538 fhandle-exceptions
539 C++ ObjC++
541 fhonor-std
542 C++ ObjC++
544 fhosted
545 C ObjC
546 Assume normal C execution environment
548 fhuge-objects
549 C++ ObjC++
550 Enable support for huge objects
552 fimplement-inlines
553 C++ ObjC++
554 Export functions even if they can be inlined
556 fimplicit-inline-templates
557 C++ ObjC++
558 Emit implicit instantiations of inline templates
560 fimplicit-templates
561 C++ ObjC++
562 Emit implicit instantiations of templates
564 ffriend-injection
565 C++ Var(flag_friend_injection)
566 Inject friend functions into enclosing namespace
568 flabels-ok
569 C++ ObjC++
571 fms-extensions
572 C ObjC C++ ObjC++
573 Don't warn about uses of Microsoft extensions
575 fname-mangling-version-
576 C++ ObjC++ Joined
578 fnew-abi
579 C++ ObjC++
581 fnext-runtime
582 ObjC ObjC++
583 Generate code for NeXT (Apple Mac OS X) runtime environment
585 fnil-receivers
586 ObjC ObjC++
587 Assume that receivers of Objective-C messages may be nil
589 fnonansi-builtins
590 C++ ObjC++
592 fnonnull-objects
593 C++ ObjC++
595 ; Generate special '- .cxx_construct' and '- .cxx_destruct' methods
596 ; to initialize any non-POD ivars in Objective-C++ classes.
597 fobjc-call-cxx-cdtors
598 ObjC++ Var(flag_objc_call_cxx_cdtors)
599 Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed
601 fobjc-direct-dispatch
602 ObjC ObjC++ Var(flag_objc_direct_dispatch)
603 Allow fast jumps to the message dispatcher
605 ; Nonzero means that we will allow new ObjC exception syntax (@throw,
606 ; @try, etc.) in source code.
607 fobjc-exceptions
608 ObjC ObjC++ Var(flag_objc_exceptions)
609 Enable Objective-C exception and synchronization syntax
611 fobjc-gc
612 ObjC ObjC++ Var(flag_objc_gc)
613 Enable garbage collection (GC) in Objective-C/Objective-C++ programs
615 ; Nonzero means that we generate NeXT setjmp based exceptions.
616 fobjc-sjlj-exceptions
617 ObjC ObjC++ Var(flag_objc_sjlj_exceptions) Init(-1)
618 Enable Objective-C setjmp exception handling runtime
620 fopenmp
621 C ObjC C++ ObjC++ Var(flag_openmp)
622 Enable OpenMP
624 foperator-names
625 C++ ObjC++
626 Recognize C++ kewords like \"compl\" and \"xor\"
628 foptional-diags
629 C++ ObjC++
630 Enable optional diagnostics
632 fpch-deps
633 C ObjC C++ ObjC++
635 fpch-preprocess
636 C ObjC C++ ObjC++
637 Look for and use PCH files even when preprocessing
639 fpermissive
640 C++ ObjC++
641 Downgrade conformance errors to warnings
643 fpreprocessed
644 C ObjC C++ ObjC++
645 Treat the input file as already preprocessed
647 freplace-objc-classes
648 ObjC ObjC++
649 Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime
651 frepo
652 C++ ObjC++
653 Enable automatic template instantiation
655 frtti
656 C++ ObjC++
657 Generate run time type descriptor information
659 fshort-double
660 C ObjC C++ ObjC++
661 Use the same size for double as for float
663 fshort-enums
664 C ObjC C++ ObjC++
665 Use the narrowest integer type possible for enumeration types
667 fshort-wchar
668 C ObjC C++ ObjC++
669 Force the underlying type for \"wchar_t\" to be \"unsigned short\"
671 fsigned-bitfields
672 C ObjC C++ ObjC++
673 When \"signed\" or \"unsigned\" is not given make the bitfield signed
675 fsigned-char
676 C ObjC C++ ObjC++
677 Make \"char\" signed by default
679 fsquangle
680 C++ ObjC++
682 fstats
683 C++ ObjC++
684 Display statistics accumulated during compilation
686 fstrict-prototype
687 C++ ObjC++
689 ftabstop=
690 C ObjC C++ ObjC++ Joined RejectNegative UInteger
691 -ftabstop=<number>      Distance between tab stops for column reporting
693 ftemplate-depth-
694 C++ ObjC++ Joined RejectNegative UInteger
695 -ftemplate-depth-<number>       Specify maximum template instantiation depth
697 fthis-is-variable
698 C++ ObjC++
700 fthreadsafe-statics
701 C++ ObjC++
702 -fno-threadsafe-statics Do not generate thread-safe code for initializing local statics
704 funsigned-bitfields
705 C ObjC C++ ObjC++
706 When \"signed\" or \"unsigned\" is not given make the bitfield unsigned
708 funsigned-char
709 C ObjC C++ ObjC++
710 Make \"char\" unsigned by default
712 fuse-cxa-atexit
713 C++ ObjC++
714 Use __cxa_atexit to register destructors
716 fuse-cxa-get-exception-ptr
717 C++ ObjC++
718 Use __cxa_get_exception_ptr in exception handling
720 fvisibility-inlines-hidden
721 C++ ObjC++
722 Marks all inlined methods as having hidden visibility
724 fvtable-gc
725 C++ ObjC++
726 Discard unused virtual functions
728 fvtable-thunks
729 C++ ObjC++
730 Implement vtables using thunks
732 fweak
733 C++ ObjC++
734 Emit common-like symbols as weak symbols
736 fwide-exec-charset=
737 C ObjC C++ ObjC++ Joined RejectNegative
738 -fwide-exec-charset=<cset>      Convert all wide strings and character constants to character set <cset>
740 fworking-directory
741 C ObjC C++ ObjC++
742 Generate a #line directive pointing at the current working directory
744 fxref
745 C++ ObjC++
746 Emit cross referencing information
748 fzero-link
749 ObjC ObjC++
750 Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode
752 gen-decls
753 ObjC ObjC++
754 Dump declarations to a .decl file
756 idirafter
757 C ObjC C++ ObjC++ Joined Separate
758 -idirafter <dir>        Add <dir> to the end of the system include path
760 imacros
761 C ObjC C++ ObjC++ Joined Separate
762 -imacros <file> Accept definition of macros in <file>
764 imultilib
765 C ObjC C++ ObjC++ Joined Separate
766 -imultilib <dir> Set <dir> to be the multilib include subdirectory
768 include
769 C ObjC C++ ObjC++ Joined Separate
770 -include <file> Include the contents of <file> before other files
772 iprefix
773 C ObjC C++ ObjC++ Joined Separate
774 -iprefix <path> Specify <path> as a prefix for next two options
776 isysroot
777 C ObjC C++ ObjC++ Joined Separate
778 -isysroot <dir> Set <dir> to be the system root directory
780 isystem
781 C ObjC C++ ObjC++ Joined Separate
782 -isystem <dir>  Add <dir> to the start of the system include path
784 iquote
785 C ObjC C++ ObjC++ Joined Separate
786 -iquote <dir>   Add <dir> to the end of the quote include path
788 iwithprefix
789 C ObjC C++ ObjC++ Joined Separate
790 -iwithprefix <dir>      Add <dir> to the end of the system include path
792 iwithprefixbefore
793 C ObjC C++ ObjC++ Joined Separate
794 -iwithprefixbefore <dir>        Add <dir> to the end of the main include path
796 lang-asm
797 C Undocumented
799 lang-fortran
800 C Undocumented
802 lang-objc
803 C ObjC C++ ObjC++ Undocumented
805 nostdinc
806 C ObjC C++ ObjC++
807 Do not search standard system include directories (those specified with -isystem will still be used)
809 nostdinc++
810 C++ ObjC++
811 Do not search standard system include directories for C++
814 C ObjC C++ ObjC++ Joined Separate
815 ; Documented in common.opt
817 pedantic
818 C ObjC C++ ObjC++
819 ; Documented in common.opt
821 pedantic-errors
822 C ObjC C++ ObjC++
823 ; Documented in common.opt
825 print-objc-runtime-info
826 ObjC ObjC++
827 Generate C header of platform-specific features
829 print-pch-checksum
830 C ObjC C++ ObjC++
831 Print a checksum of the executable for PCH validity checking, and stop
833 remap
834 C ObjC C++ ObjC++
835 Remap file names when including files
837 std=c++98
838 C++ ObjC++
839 Conform to the ISO 1998 C++ standard
841 std=c89
842 C ObjC
843 Conform to the ISO 1990 C standard
845 std=c99
846 C ObjC
847 Conform to the ISO 1999 C standard
849 std=c9x
850 C ObjC
851 Deprecated in favor of -std=c99
853 std=gnu++98
854 C++ ObjC++
855 Conform to the ISO 1998 C++ standard with GNU extensions
857 std=gnu89
858 C ObjC
859 Conform to the ISO 1990 C standard with GNU extensions
861 std=gnu99
862 C ObjC
863 Conform to the ISO 1999 C standard with GNU extensions
865 std=gnu9x
866 C ObjC
867 Deprecated in favor of -std=gnu99
869 std=iso9899:1990
870 C ObjC
871 Conform to the ISO 1990 C standard
873 std=iso9899:199409
874 C ObjC
875 Conform to the ISO 1990 C standard as amended in 1994
877 std=iso9899:1999
878 C ObjC
879 Conform to the ISO 1999 C standard
881 std=iso9899:199x
882 C ObjC
883 Deprecated in favor of -std=iso9899:1999
885 traditional-cpp
886 C ObjC C++ ObjC++
887 Enable traditional preprocessing
889 trigraphs
890 C ObjC C++ ObjC++
891 -trigraphs      Support ISO C trigraphs
893 undef
894 C ObjC C++ ObjC++
895 Do not predefine system-specific and GCC-specific macros
898 C ObjC C++ ObjC++
899 Enable verbose output
902 C ObjC C++ ObjC++
903 ; Documented in common.opt
905 ; This comment is to ensure we retain the blank line above.