* config/i386/i386.c (output_fp_compare): Add generation
[official-gcc.git] / gcc / c.opt
blobc93fe7e895a538716a6e82baa17d322d17ce71d7
1 ; Options for the C, ObjC, C++ and ObjC++ front ends.
2 ; Copyright (C) 2003, 2004 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.
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 COPYING.  If not, write to the Free
18 ; Software Foundation, 59 Temple Place - Suite 330, Boston, MA
19 ; 02111-1307, USA.
22 ; This file is processed by the script opts.sh.  It is a database of
23 ; command line options, with each record separated by a blank line,
24 ; and each field appearing on its own line.  The first field is the
25 ; command-line switch with the leading "-" removed.  All options
26 ; beginning with "f" or "W" are implicitly assumed to take a "no-"
27 ; form; this form should not be listed.  If you do not want this
28 ; negative form and you want it to be automatically rejected, add
29 ; RejectNegative to the second field.
31 ; The second field is a space-separated list of which parts of the
32 ; compiler recognize the switch, as declared by "Language" entries.
33 ; If the switch takes an argument, then you should also specify
34 ; "Joined" and/or "Separate" to indicate where the argument can
35 ; appear.  If a Joined argument can legitimately be omitted, specify
36 ; "JoinedOrMissing" instead of "Joined".  If the argument to a switch
37 ; is a non-negative integer, you can specify "UInteger" and the switch
38 ; decoder will convert the argument for you, or complain to the user
39 ; if the argument is invalid.  "Var(name,set)" creates an integer
40 ; variable "name".  The variable is declared and initialized to value
41 ; given by "Init(value)" (or zero if this property is not defined).
42 ; When the option is passed to compiler, this variable is set to "set"
43 ; if value passed through the flag is nonzero, !"set" if value is zero,
44 ; or to value if "set" is omitted.  If "VarExists"  is specified, the
45 ; declaration for the variable is not created.  If "Report" is specified,
46 ; the flag is output with -fverbose-asm.
48 ; The third field is the help text to output with --help.  This is
49 ; automatically line-wrapped on output.  Normally the switch is output
50 ; automatically, with the help text on the right hand side of the
51 ; output.  However, if the help text contains a tab character, the
52 ; text to the left of the tab is output instead of the switch, and the
53 ; text to its right forms the help.  This is useful for elaborating on
54 ; what type of argument a switch takes, for example.  If the second
55 ; field contains "Undocumented" then nothing is output with --help.
56 ; Only do this with good reason like the switch being internal between
57 ; the driver and the front end - it is not an excuse to leave a switch
58 ; undocumented.
60 ; Comments can appear on their own line anwhere in the file, preceded
61 ; by a semicolon.  Whitespace is permitted before the semicolon.
63 ; For each switch XXX below, an enumeration constant is created by the
64 ; script opts.sh spelt OPT_XXX, but with all non-alphanumeric
65 ; characters replaced with an underscore.
67 ; Please try to keep this file in ASCII collating order.
69 Language
72 Language
73 ObjC
75 Language
76 C++
78 Language
79 ObjC++
81 -output-pch=
82 C ObjC C++ ObjC++ Joined Separate
85 C ObjC C++ ObjC++ Joined Separate
86 -A<question>=<answer>   Assert the <answer> to <question>.  Putting '-' before <question> disables the <answer> to <question>
89 C ObjC C++ ObjC++
90 Do not discard comments
93 C ObjC C++ ObjC++
94 Do not discard comments in macro expansions
97 C ObjC C++ ObjC++ Joined Separate
98 -D<macro>[=<val>]       Define a <macro> with <val> as its value.  If just <macro> is given, <val> is taken to be 1
101 C ObjC C++ ObjC++ Undocumented
104 C ObjC C++ ObjC++ Joined Separate
105 -F <dir>        Add <dir> to the end of the main framework include path  
108 C ObjC C++ ObjC++
109 Print the name of header files as they are used
112 C ObjC C++ ObjC++ Joined Separate
113 -I <dir>        Add <dir> to the end of the main include path
116 C ObjC C++ ObjC++
117 Generate make dependencies
120 C ObjC C++ ObjC++ Separate
121 Generate make dependencies and compile
124 C ObjC C++ ObjC++ Joined Separate
125 -MF <file>      Write dependency output to the given file
128 C ObjC C++ ObjC++
129 Treat missing header files as generated files
132 C ObjC C++ ObjC++
133 Like -M but ignore system header files
136 C ObjC C++ ObjC++ Separate
137 Like -MD but ignore system header files
140 C ObjC C++ ObjC++
141 Generate phony targets for all headers
144 C ObjC C++ ObjC++ Joined Separate
145 -MQ <target>    Add a MAKE-quoted target
148 C ObjC C++ ObjC++ Joined Separate
149 -MT <target>    Add an unquoted target
152 C ObjC C++ ObjC++
153 Do not generate #line directives
156 C ObjC C++ ObjC++ Joined Separate
157 -U<macro>       Undefine <macro>
159 Wabi
160 C++ ObjC++ Var(warn_abi)
161 Warn about things that will change when compiling with an ABI-compliant compiler
163 Wall
164 C ObjC C++ ObjC++
165 Enable most warning messages
167 Wbad-function-cast
168 C ObjC Var(warn_bad_function_cast)
169 Warn about casting functions to incompatible types
171 Wcast-qual
172 C ObjC C++ ObjC++ Var(warn_cast_qual)
173 Warn about casts which discard qualifiers
175 Wchar-subscripts
176 C ObjC C++ ObjC++ Var(warn_char_subscripts)
177 Warn about subscripts whose type is \"char\"
179 Wcomment
180 C ObjC C++ ObjC++
181 Warn about possibly nested block comments, and C++ comments spanning more than one physical line
183 Wcomments
184 C ObjC C++ ObjC++
185 Synonym for -Wcomment
187 Wconversion
188 C ObjC C++ ObjC++ Var(warn_conversion)
189 Warn about possibly confusing type conversions
191 Wctor-dtor-privacy
192 C++ ObjC++ Var(warn_ctor_dtor_privacy)
193 Warn when all constructors and destructors are private
195 Wdeclaration-after-statement
196 C ObjC Var(warn_declaration_after_statement)
197 Warn when a declaration is found after a statement
199 Wdeprecated
200 C++ ObjC++ Var(warn_deprecated) Init(1)
201 Warn about deprecated compiler features
203 Wdiv-by-zero
204 C ObjC Var(warn_div_by_zero) Init(1)
205 Warn about compile-time integer division by zero
207 Weffc++
208 C++ ObjC++ Var(warn_ecpp)
209 Warn about violations of Effective C++ style rules
211 Wendif-labels
212 C ObjC C++ ObjC++
213 Warn about stray tokens after #elif and #endif
215 Werror
216 C ObjC C++ ObjC++
217 ; Documented in common.opt
219 Werror-implicit-function-declaration
220 C ObjC RejectNegative
221 Make implicit function declarations an error
223 Wfloat-equal
224 C ObjC C++ ObjC++ Var(warn_float_equal)
225 Warn if testing floating point numbers for equality
227 Wformat
228 C ObjC C++ ObjC++
229 Warn about printf/scanf/strftime/strfmon format string anomalies
231 Wformat-extra-args
232 C ObjC C++ ObjC++ Var(warn_format_extra_args)
233 Warn if passing too many arguments to a function for its format string
235 Wformat-nonliteral
236 C ObjC C++ ObjC++ Var(warn_format_nonliteral)
237 Warn about format strings that are not literals
239 Wformat-security
240 C ObjC C++ ObjC++ Var(warn_format_security)
241 Warn about possible security problems with format functions
243 Wformat-y2k
244 C ObjC C++ ObjC++ Var(warn_format_y2k)
245 Warn about strftime formats yielding 2-digit years
247 Wformat-zero-length
248 C ObjC Var(warn_format_zero_length)
249 Warn about zero-length formats
251 Wformat=
252 C ObjC C++ ObjC++ Joined
254 Winit-self
255 C ObjC C++ ObjC++ Var(warn_init_self)
256 Warn about variables which are initialized to themselves.
258 Wimplicit
259 C ObjC C++ ObjC++
261 Wimplicit-function-declaration
262 C ObjC Var(mesg_implicit_function_declaration) Init(-1)
263 Warn about implicit function declarations
265 Wimplicit-int
266 C ObjC Var(warn_implicit_int)
267 Warn when a declaration does not specify a type
269 Wimport
270 C ObjC C++ ObjC++
271 Deprecated.  This switch has no effect.
273 Winvalid-offsetof
274 C++ ObjC++ Var(warn_invalid_offsetof) Init(1)
275 Warn about invalid uses of the \"offsetof\" macro
277 Winvalid-pch
278 C ObjC C++ ObjC++
279 Warn about PCH files that are found but not used
281 Wlong-long
282 C ObjC C++ ObjC++ Var(warn_long_long) Init(1)
283 Do not warn about using \"long long\" when -pedantic
285 Wmain
286 C ObjC
287 Warn about suspicious declarations of \"main\"
289 Wmissing-braces
290 C ObjC C++ ObjC++ Var(warn_missing_braces)
291 Warn about possibly missing braces around initializers
293 Wmissing-declarations
294 C ObjC Var(warn_missing_declarations)
295 Warn about global functions without previous declarations
297 Wmissing-field-initializers
298 C ObjC C++ ObjC++ Var(warn_missing_field_initializers) Init(-1)
299 Warn about missing fields in struct initializers
301 Wmissing-format-attribute
302 C ObjC C++ ObjC++ Var(warn_missing_format_attribute)
303 Warn about functions which might be candidates for format attributes
305 Wmissing-include-dirs
306 C ObjC C++ ObjC++
307 Warn about user-specified include directories that do not exist
309 Wmissing-prototypes
310 C ObjC Var(warn_missing_prototypes)
311 Warn about global functions without prototypes
313 Wmultichar
314 C ObjC C++ ObjC++
315 Warn about use of multi-character character constants
317 Wnested-externs
318 C ObjC Var(warn_nested_externs)
319 Warn about \"extern\" declarations not at file scope
321 Wnon-template-friend
322 C++ ObjC++ Var(warn_nontemplate_friend) Init(1)
323 Warn when non-templatized friend functions are declared within a template
325 Wnon-virtual-dtor
326 C++ ObjC++ Var(warn_nonvdtor)
327 Warn about non-virtual destructors
329 Wnonnull
330 C ObjC Var(warn_nonnull)
331 Warn about NULL being passed to argument slots marked as requiring non-NULL
333 Wold-style-cast
334 C++ ObjC++ Var(warn_old_style_cast)
335 Warn if a C-style cast is used in a program
337 Wold-style-definition
338 C ObjC Var(warn_old_style_definition)
339 Warn if an old-style parameter definition is used
341 Woverloaded-virtual
342 C++ ObjC++ Var(warn_overloaded_virtual)
343 Warn about overloaded virtual function names
345 Wparentheses
346 C ObjC C++ ObjC++ Var(warn_parentheses)
347 Warn about possibly missing parentheses
349 Wpmf-conversions
350 C++ ObjC++ Var(warn_pmf2ptr) Init(1)
351 Warn when converting the type of pointers to member functions
353 Wpointer-arith
354 C ObjC C++ ObjC++ Var(warn_pointer_arith)
355 Warn about function pointer arithmetic
357 Wprotocol
358 ObjC ObjC++ Var(warn_protocol) Init(1)
359 Warn if inherited methods are unimplemented
361 Wredundant-decls
362 C ObjC C++ ObjC++ Var(warn_redundant_decls)
363 Warn about multiple declarations of the same object
365 Wreorder
366 C++ ObjC++ Var(warn_reorder)
367 Warn when the compiler reorders code
369 Wreturn-type
370 C ObjC C++ ObjC++
371 Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)
373 Wselector
374 ObjC ObjC++ Var(warn_selector)
375 Warn if a selector has multiple methods
377 Wsequence-point
378 C ObjC C++ ObjC++ Var(warn_sequence_point)
379 Warn about possible violations of sequence point rules
381 Wsign-compare
382 C ObjC C++ ObjC++ Var(warn_sign_compare) Init(-1)
383 Warn about signed-unsigned comparisons
385 Wsign-promo
386 C++ ObjC++ Var(warn_sign_promo)
387 Warn when overload promotes from unsigned to signed
389 Wstrict-prototypes
390 C ObjC Var(warn_strict_prototypes)
391 Warn about unprototyped function declarations
393 Wsynth
394 C++ ObjC++ Var(warn_synth)
395 Warn when synthesis behavior differs from Cfront
397 Wsystem-headers
398 C ObjC C++ ObjC++
399 Do not suppress warnings from system headers
401 Wtraditional
402 C ObjC Var(warn_traditional)
403 Warn about features not present in traditional C
405 Wtrigraphs
406 C ObjC C++ ObjC++
407 Warn if trigraphs are encountered that might affect the meaning of the program
409 Wundeclared-selector
410 ObjC ObjC++ Var(warn_undeclared_selector)
411 Warn about @selector()s without previously declared methods
413 Wundef
414 C ObjC C++ ObjC++
415 Warn if an undefined macro is used in an #if directive
417 Wunknown-pragmas
418 C ObjC C++ ObjC++
419 Warn about unrecognized pragmas
421 Wunused-macros
422 C ObjC C++ ObjC++
423 Warn about macros defined in the main file that are not used
425 Wvariadic-macros
426 C ObjC C++ ObjC++
427 Do not warn about using variadic macros when -pedantic
429 Wwrite-strings
430 C ObjC C++ ObjC++
431 Give strings the type \"array of char\"
433 ansi
434 C ObjC C++ ObjC++
435 A synonym for -std=c89.  In a future version of GCC it will become synonymous with -std=c99 instead
438 C ObjC C++ ObjC++ Joined
439 ; Documented in common.opt.  FIXME - what about -dI, -dD, -dN and -dD?
441 faccess-control
442 C++ ObjC++
443 Enforce class member access control semantics
445 fall-virtual
446 C++ ObjC++
448 falt-external-templates
449 C++ ObjC++
450 Change when template instances are emitted
452 fasm
453 C ObjC C++ ObjC++
454 Recognize the \"asm\" keyword
456 fbuiltin
457 C ObjC C++ ObjC++
458 Recognize built-in functions
460 fbuiltin-
461 C ObjC C++ ObjC++ Joined
463 fcheck-new
464 C++ ObjC++
465 Check the return value of new
467 fcond-mismatch
468 C ObjC C++ ObjC++
469 Allow the arguments of the '?' operator to have different types
471 fconserve-space
472 C++ ObjC++
473 Reduce the size of object files
475 fconst-strings
476 C++ ObjC++
477 Make string literals \"const char[]\" not \"char[]\"
479 fconstant-string-class=
480 ObjC ObjC++ Joined
481 -fconst-string-class=<name>     Use class <name> for constant strings
483 fdefault-inline
484 C++ ObjC++
485 Inline member functions by default
487 fdollars-in-identifiers
488 C ObjC C++ ObjC++
489 Permit '$' as an identifier character
491 felide-constructors
492 C++ ObjC++
494 fenforce-eh-specs
495 C++ ObjC++
496 Generate code to check exception specifications
498 fenum-int-equiv
499 C++ ObjC++
501 fexec-charset=
502 C ObjC C++ ObjC++ Joined RejectNegative
503 -fexec-charset=<cset>   Convert all strings and character constants to character set <cset>
505 finput-charset=
506 C ObjC C++ ObjC++ Joined RejectNegative
507 -finput-charset=<cset>      Specify the default character set for source files.
510 fexternal-templates
511 C++ ObjC++
513 ffixed-form
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 flabels-ok
565 C++ ObjC++
567 fms-extensions
568 C ObjC C++ ObjC++
569 Don't warn about uses of Microsoft extensions
571 fname-mangling-version-
572 C++ ObjC++ Joined
574 fnew-abi
575 C++ ObjC++
577 fnext-runtime
578 ObjC ObjC++
579 Generate code for NeXT (Apple Mac OS X) runtime environment
581 fnil-receivers
582 ObjC ObjC++
583 Assume that receivers of Objective-C messages may be nil
585 fnonansi-builtins
586 C++ ObjC++
588 fnonnull-objects
589 C++ ObjC++
591 fobjc-exceptions
592 ObjC ObjC++
593 Enable Objective-C exception and synchronization syntax
595 fobjc-sjlj-exceptions
596 ObjC ObjC++
597 Enable Objective-C setjmp exception handling runtime
599 foperator-names
600 C++ ObjC++
601 Recognize C++ kewords like \"compl\" and \"xor\"
603 foptional-diags
604 C++ ObjC++
605 Enable optional diagnostics
607 fpch-deps
608 C ObjC C++ ObjC++
610 fpch-preprocess
611 C ObjC C++ ObjC++
612 Look for and use PCH files even when preprocessing
614 fpermissive
615 C++ ObjC++
616 Downgrade conformance errors to warnings
618 fpreprocessed
619 C ObjC C++ ObjC++
620 Treat the input file as already preprocessed
622 freplace-objc-classes
623 ObjC ObjC++
624 Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime
626 frepo
627 C++ ObjC++
628 Enable automatic template instantiation
630 frtti
631 C++ ObjC++
632 Generate run time type descriptor information
634 fshort-double
635 C ObjC C++ ObjC++
636 Use the same size for double as for float
638 fshort-enums
639 C ObjC C++ ObjC++
640 Use the narrowest integer type possible for enumeration types
642 fshort-wchar
643 C ObjC C++ ObjC++
644 Force the underlying type for \"wchar_t\" to be \"unsigned short\"
646 fshow-column
647 C ObjC C++ ObjC++
649 fsigned-bitfields
650 C ObjC C++ ObjC++
651 When \"signed\" or \"unsigned\" is not given make the bitfield signed
653 fsigned-char
654 C ObjC C++ ObjC++
655 Make \"char\" signed by default
657 fsquangle
658 C++ ObjC++
660 fstats
661 C++ ObjC++
662 Display statistics accumulated during compilation
664 fstrict-prototype
665 C++ ObjC++
667 ftabstop=
668 C ObjC C++ ObjC++ Joined RejectNegative UInteger
669 -ftabstop=<number>      Distance between tab stops for column reporting
671 ftemplate-depth-
672 C++ ObjC++ Joined RejectNegative UInteger 
673 -ftemplate-depth-<number>       Specify maximum template instantiation depth
675 fthis-is-variable
676 C++ ObjC++
678 fthreadsafe-statics
679 C++ ObjC++
680 -fno-threadsafe-statics Do not generate thread-safe code for initializing local statics.
682 funsigned-bitfields
683 C ObjC C++ ObjC++
684 When \"signed\" or \"unsigned\" is not given make the bitfield unsigned
686 funsigned-char
687 C ObjC C++ ObjC++
688 Make \"char\" unsigned by default
690 fuse-cxa-atexit
691 C++ ObjC++
692 Use __cxa_atexit to register destructors
694 fvisibility-inlines-hidden
696 Marks all inlined methods as having hidden visibility
698 fvtable-gc
699 C++ ObjC++
700 Discard unused virtual functions
702 fvtable-thunks
703 C++ ObjC++
704 Implement vtables using thunks
706 fweak
707 C++ ObjC++
708 Emit common-like symbols as weak symbols
710 fwide-exec-charset=
711 C ObjC C++ ObjC++ Joined RejectNegative
712 -fwide-exec-charset=<cset>      Convert all wide strings and character constants to character set <cset>
714 fworking-directory
715 C ObjC C++ ObjC++
716 Generate a #line directive pointing at the current working directory
718 fxref
719 C++ ObjC++
720 Emit cross referencing information
722 fzero-link
723 ObjC ObjC++
724 Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode
726 gen-decls
727 ObjC ObjC++
728 Dump declarations to a .decl file
730 idirafter
731 C ObjC C++ ObjC++ Joined Separate
732 -idirafter <dir>        Add <dir> to the end of the system include path
734 imacros
735 C ObjC C++ ObjC++ Joined Separate
736 -imacros <file> Accept definition of macros in <file>
738 include
739 C ObjC C++ ObjC++ Joined Separate
740 -include <file> Include the contents of <file> before other files
742 iprefix
743 C ObjC C++ ObjC++ Joined Separate
744 -iprefix <path> Specify <path> as a prefix for next two options
746 isysroot
747 C ObjC C++ ObjC++ Joined Separate
748 -isysroot <dir> Set <dir> to be the system root directory
750 isystem
751 C ObjC C++ ObjC++ Joined Separate
752 -isystem <dir>  Add <dir> to the start of the system include path
754 iquote
755 C ObjC C++ ObjC++ Joined Separate
756 -iquote <dir>   Add <dir> to the end of the quote include path
758 iwithprefix
759 C ObjC C++ ObjC++ Joined Separate
760 -iwithprefix <dir>      Add <dir> to the end of the system include path
762 iwithprefixbefore
763 C ObjC C++ ObjC++ Joined Separate
764 -iwithprefixbefore <dir>        Add <dir> to the end of the main include path
766 lang-asm
767 C Undocumented
769 lang-objc
770 C ObjC C++ ObjC++ Undocumented
772 nostdinc
773 C ObjC C++ ObjC++
774 Do not search standard system include directories (those specified with -isystem will still be used)
776 nostdinc++
777 C++ ObjC++
778 Do not search standard system include directories for C++
781 C ObjC C++ ObjC++ Joined Separate
782 ; Documented in common.opt
784 pedantic
785 C ObjC C++ ObjC++
786 ; Documented in common.opt
788 pedantic-errors
789 C ObjC C++ ObjC++
790 ; Documented in common.opt
792 print-objc-runtime-info
793 ObjC ObjC++
794 Generate C header of platform-specific features
796 remap
797 C ObjC C++ ObjC++
798 Remap file names when including files
800 std=c++98
801 C++ ObjC++
802 Conform to the ISO 1998 C++ standard
804 std=c89
805 C ObjC
806 Conform to the ISO 1990 C standard
808 std=c99
809 C ObjC
810 Conform to the ISO 1999 C standard
812 std=c9x
813 C ObjC
814 Deprecated in favor of -std=c99
816 std=gnu++98
817 C++ ObjC++
818 Conform to the ISO 1998 C++ standard with GNU extensions
820 std=gnu89
821 C ObjC
822 Conform to the ISO 1990 C standard with GNU extensions
824 std=gnu99
825 C ObjC
826 Conform to the ISO 1999 C standard with GNU extensions
828 std=gnu9x
829 C ObjC
830 Deprecated in favor of -std=gnu99
832 std=iso9899:1990
833 C ObjC
834 Deprecated in favor of -std=c89
836 std=iso9899:199409
837 C ObjC
838 Conform to the ISO 1990 C standard as amended in 1994
840 std=iso9899:1999
841 C ObjC
842 Deprecated in favor of -std=c99
844 std=iso9899:199x
845 C ObjC
846 Deprecated in favor of -std=c99
848 traditional-cpp
849 C ObjC C++ ObjC++
850 Enable traditional preprocessing
852 trigraphs
853 C ObjC C++ ObjC++
854 -trigraphs      Support ISO C trigraphs
856 undef
857 C ObjC C++ ObjC++
858 Do not predefine system-specific and GCC-specific macros
861 C ObjC C++ ObjC++
862 Enable verbose output
865 C ObjC C++ ObjC++
866 ; Documented in common.opt
868 ; This comment is to ensure we retain the blank line above.