2007-02-19 Thomas Koenig <Thomas.Koenig@online.de>
[official-gcc.git] / gcc / c.opt
blobc384f52b3a4c5a428744d46b199b620a64b11ac1
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) Warning
117 Warn about things that will change when compiling with an ABI-compliant compiler
119 Waddress
120 C ObjC C++ ObjC++ Var(warn_address) Warning
121 Warn about suspicious uses of memory addresses
123 Wall
124 C ObjC C++ ObjC++ Warning
125 Enable most warning messages
127 Wassign-intercept
128 ObjC ObjC++ Var(warn_assign_intercept) Warning
129 Warn whenever an Objective-C assignment is being intercepted by the garbage collector
131 Wbad-function-cast
132 C ObjC Var(warn_bad_function_cast) Warning
133 Warn about casting functions to incompatible types
135 Wc++-compat
136 C Var(warn_cxx_compat) Warning
137 Warn about C constructs that are not in the common subset of C and C++
139 Wc++0x-compat
140 C++ ObjC++ Var(warn_cxx0x_compat)
141 Warn about C++ constructs whose meaning differs between ISO C++ 1998 and ISO C++ 200x
143 Wcast-qual
144 C ObjC C++ ObjC++ Var(warn_cast_qual) Warning
145 Warn about casts which discard qualifiers
147 Wchar-subscripts
148 C ObjC C++ ObjC++ Var(warn_char_subscripts) Warning
149 Warn about subscripts whose type is \"char\"
151 Wclobbered
152 C ObjC C++ ObjC++ Var(warn_clobbered) Init(-1) Warning
153 Warn about variables that might be changed by \"longjmp\" or \"vfork\"
155 Wcomment
156 C ObjC C++ ObjC++ Warning
157 Warn about possibly nested block comments, and C++ comments spanning more than one physical line
159 Wcomments
160 C ObjC C++ ObjC++ Warning
161 Synonym for -Wcomment
163 Wconversion
164 C ObjC C++ ObjC++ Var(warn_conversion) Warning
165 Warn for implicit type conversions that may change a value
167 Wctor-dtor-privacy
168 C++ ObjC++ Var(warn_ctor_dtor_privacy) Warning
169 Warn when all constructors and destructors are private
171 Wdeclaration-after-statement
172 C ObjC Var(warn_declaration_after_statement) Warning
173 Warn when a declaration is found after a statement
175 Wdeprecated
176 C++ ObjC++ Var(warn_deprecated) Init(1) Warning
177 Warn about deprecated compiler features
179 Wdiv-by-zero
180 C ObjC C++ Var(warn_div_by_zero) Init(1) Warning
181 Warn about compile-time integer division by zero
183 Weffc++
184 C++ ObjC++ Var(warn_ecpp) Warning
185 Warn about violations of Effective C++ style rules
187 Wempty-body
188 C ObjC C++ ObjC++ Var(warn_empty_body) Init(-1) Warning
189 Warn about an empty body in an if or else statement
191 Wendif-labels
192 C ObjC C++ ObjC++ Warning
193 Warn about stray tokens after #elif and #endif
195 Werror
196 C ObjC C++ ObjC++
197 ; Documented in common.opt
199 Werror-implicit-function-declaration
200 C ObjC RejectNegative Warning
201 This switch is deprecated; use -Werror=implicit-function-declaration instead
203 Wfloat-equal
204 C ObjC C++ ObjC++ Var(warn_float_equal) Warning
205 Warn if testing floating point numbers for equality
207 Wformat
208 C ObjC C++ ObjC++ Warning
209 Warn about printf/scanf/strftime/strfmon format string anomalies
211 Wformat-extra-args
212 C ObjC C++ ObjC++ Var(warn_format_extra_args) Warning
213 Warn if passing too many arguments to a function for its format string
215 Wformat-nonliteral
216 C ObjC C++ ObjC++ Var(warn_format_nonliteral) Warning
217 Warn about format strings that are not literals
219 Wformat-security
220 C ObjC C++ ObjC++ Var(warn_format_security) Warning
221 Warn about possible security problems with format functions
223 Wformat-y2k
224 C ObjC C++ ObjC++ Var(warn_format_y2k) Warning
225 Warn about strftime formats yielding 2-digit years
227 Wformat-zero-length
228 C ObjC Var(warn_format_zero_length) Warning
229 Warn about zero-length formats
231 Wformat=
232 C ObjC C++ ObjC++ Joined Warning
234 Winit-self
235 C ObjC C++ ObjC++ Var(warn_init_self) Warning
236 Warn about variables which are initialized to themselves
238 Wimplicit
239 C ObjC C++ ObjC++ Warning
241 Wimplicit-function-declaration
242 C ObjC Var(warn_implicit_function_declaration) Init(-1) Warning
243 Warn about implicit function declarations
245 Wimplicit-int
246 C ObjC Var(warn_implicit_int) Warning
247 Warn when a declaration does not specify a type
249 Wimport
250 C ObjC C++ ObjC++
251 Deprecated.  This switch has no effect
253 Wint-to-pointer-cast
254 C ObjC Var(warn_int_to_pointer_cast) Init(1) Warning
255 Warn when there is a cast to a pointer from an integer of a different size
257 Winvalid-offsetof
258 C++ ObjC++ Var(warn_invalid_offsetof) Init(1) Warning
259 Warn about invalid uses of the \"offsetof\" macro
261 Winvalid-pch
262 C ObjC C++ ObjC++ Warning
263 Warn about PCH files that are found but not used
265 Wlong-long
266 C ObjC C++ ObjC++ Var(warn_long_long) Init(1) Warning
267 Do not warn about using \"long long\" when -pedantic
269 Wmain
270 C ObjC Warning
271 Warn about suspicious declarations of \"main\"
273 Wmissing-braces
274 C ObjC C++ ObjC++ Var(warn_missing_braces) Warning
275 Warn about possibly missing braces around initializers
277 Wmissing-declarations
278 C ObjC C++ ObjC++ Var(warn_missing_declarations) Warning
279 Warn about global functions without previous declarations
281 Wmissing-field-initializers
282 C ObjC C++ ObjC++ Var(warn_missing_field_initializers) Init(-1) Warning
283 Warn about missing fields in struct initializers
285 Wmissing-format-attribute
286 C ObjC C++ ObjC++ Var(warn_missing_format_attribute) Warning
287 Warn about functions which might be candidates for format attributes
289 Wmissing-include-dirs
290 C ObjC C++ ObjC++ Warning
291 Warn about user-specified include directories that do not exist
293 Wmissing-parameter-type
294 C ObjC Var(warn_missing_parameter_type) Init(-1) Warning
295 Warn about function parameters declared without a type specifier in K&R-style functions
297 Wmissing-prototypes
298 C ObjC Var(warn_missing_prototypes) Warning
299 Warn about global functions without prototypes
301 Wmultichar
302 C ObjC C++ ObjC++ Warning
303 Warn about use of multi-character character constants
305 Wnested-externs
306 C ObjC Var(warn_nested_externs) Warning
307 Warn about \"extern\" declarations not at file scope
309 Wnon-template-friend
310 C++ ObjC++ Var(warn_nontemplate_friend) Init(1) Warning
311 Warn when non-templatized friend functions are declared within a template
313 Wnon-virtual-dtor
314 C++ ObjC++ Var(warn_nonvdtor) Warning
315 Warn about non-virtual destructors
317 Wnonnull
318 C ObjC Var(warn_nonnull) Warning
319 Warn about NULL being passed to argument slots marked as requiring non-NULL
321 Wnormalized=
322 C ObjC C++ ObjC++ Joined Warning
323 -Wnormalized=<id|nfc|nfkc>      Warn about non-normalised Unicode strings
325 Wold-style-cast
326 C++ ObjC++ Var(warn_old_style_cast) Warning
327 Warn if a C-style cast is used in a program
329 Wold-style-declaration
330 C ObjC Var(warn_old_style_declaration) Init(-1) Warning
331 Warn for obsolescent usage in a declaration
333 Wold-style-definition
334 C ObjC Var(warn_old_style_definition) Warning
335 Warn if an old-style parameter definition is used
337 Woverlength-strings
338 C ObjC C++ ObjC++ Var(warn_overlength_strings) Init(-1) Warning
339 Warn if a string is longer than the maximum portable length specified by the standard
341 Woverloaded-virtual
342 C++ ObjC++ Var(warn_overloaded_virtual) Warning
343 Warn about overloaded virtual function names
345 Woverride-init
346 C ObjC Var(warn_override_init) Init(-1) Warning
347 Warn about overriding initializers without side effects
349 Wparentheses
350 C ObjC C++ ObjC++ Var(warn_parentheses) Warning
351 Warn about possibly missing parentheses
353 Wpmf-conversions
354 C++ ObjC++ Var(warn_pmf2ptr) Init(1) Warning
355 Warn when converting the type of pointers to member functions
357 Wpointer-arith
358 C ObjC C++ ObjC++ Var(warn_pointer_arith) Warning
359 Warn about function pointer arithmetic
361 Wpointer-to-int-cast
362 C ObjC Var(warn_pointer_to_int_cast) Init(1) Warning
363 Warn when a pointer is cast to an integer of a different size
365 Wpragmas
366 C ObjC C++ ObjC++ Var(warn_pragmas) Init(1) Warning
367 Warn about misuses of pragmas
369 Wprotocol
370 ObjC ObjC++ Var(warn_protocol) Init(1) Warning
371 Warn if inherited methods are unimplemented
373 Wredundant-decls
374 C ObjC C++ ObjC++ Var(warn_redundant_decls) Warning
375 Warn about multiple declarations of the same object
377 Wreorder
378 C++ ObjC++ Var(warn_reorder) Warning
379 Warn when the compiler reorders code
381 Wreturn-type
382 C ObjC C++ ObjC++ Var(warn_return_type) Warning
383 Warn whenever a function's return type defaults to \"int\" (C), or about inconsistent return types (C++)
385 Wselector
386 ObjC ObjC++ Var(warn_selector) Warning
387 Warn if a selector has multiple methods
389 Wsequence-point
390 C ObjC C++ ObjC++ Var(warn_sequence_point) Warning
391 Warn about possible violations of sequence point rules
393 Wsign-compare
394 C ObjC C++ ObjC++ Var(warn_sign_compare) Init(-1) Warning
395 Warn about signed-unsigned comparisons
397 Wsign-promo
398 C++ ObjC++ Var(warn_sign_promo) Warning
399 Warn when overload promotes from unsigned to signed
401 Wstrict-null-sentinel
402 C++ ObjC++ Warning
403 Warn about uncasted NULL used as sentinel
405 Wstrict-prototypes
406 C ObjC Var(warn_strict_prototypes) Warning
407 Warn about unprototyped function declarations
409 Wstrict-selector-match
410 ObjC ObjC++ Var(warn_strict_selector_match) Warning
411 Warn if type signatures of candidate methods do not match exactly
413 Wsynth
414 C++ ObjC++ Var(warn_synth) Warning
415 Warn when synthesis behavior differs from Cfront
417 Wsystem-headers
418 C ObjC C++ ObjC++ Warning
419 Do not suppress warnings from system headers
421 Wtraditional
422 C ObjC Var(warn_traditional) Warning
423 Warn about features not present in traditional C
425 Wtraditional-conversion
426 C ObjC Var(warn_traditional_conversion) Warning
427 Warn of prototypes causing type conversions different from what would happen in the absence of prototype
429 Wtrigraphs
430 C ObjC C++ ObjC++ Warning
431 Warn if trigraphs are encountered that might affect the meaning of the program
433 Wundeclared-selector
434 ObjC ObjC++ Var(warn_undeclared_selector) Warning
435 Warn about @selector()s without previously declared methods
437 Wundef
438 C ObjC C++ ObjC++ Warning
439 Warn if an undefined macro is used in an #if directive
441 Wunknown-pragmas
442 C ObjC C++ ObjC++ Warning
443 Warn about unrecognized pragmas
445 Wunused-macros
446 C ObjC C++ ObjC++ Warning
447 Warn about macros defined in the main file that are not used
449 Wvariadic-macros
450 C ObjC C++ ObjC++ Warning
451 Do not warn about using variadic macros when -pedantic
453 Wwrite-strings
454 C ObjC C++ ObjC++ Var(warn_write_strings) Warning
455 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.
457 Wpointer-sign
458 C ObjC Var(warn_pointer_sign) Init(-1) Warning
459 Warn when a pointer differs in signedness in an assignment
461 ansi
462 C ObjC C++ ObjC++
463 A synonym for -std=c89 (for C) or -std=c++98 (for C++)
466 C ObjC C++ ObjC++ Joined
467 ; Documented in common.opt.  FIXME - what about -dI, -dD, -dN and -dD?
469 faccess-control
470 C++ ObjC++
471 Enforce class member access control semantics
473 fall-virtual
474 C++ ObjC++
476 falt-external-templates
477 C++ ObjC++
478 Change when template instances are emitted
480 fasm
481 C ObjC C++ ObjC++
482 Recognize the \"asm\" keyword
484 fbuiltin
485 C ObjC C++ ObjC++
486 Recognize built-in functions
488 fbuiltin-
489 C ObjC C++ ObjC++ Joined
491 fcheck-new
492 C++ ObjC++
493 Check the return value of new
495 fcond-mismatch
496 C ObjC C++ ObjC++
497 Allow the arguments of the '?' operator to have different types
499 fconserve-space
500 C++ ObjC++
501 Reduce the size of object files
503 fconstant-string-class=
504 ObjC ObjC++ Joined
505 -fconst-string-class=<name>     Use class <name> for constant strings
507 fdefault-inline
508 C++ ObjC++
509 Inline member functions by default
511 fdollars-in-identifiers
512 C ObjC C++ ObjC++
513 Permit '$' as an identifier character
515 felide-constructors
516 C++ ObjC++
518 fenforce-eh-specs
519 C++ ObjC++
520 Generate code to check exception specifications
522 fenum-int-equiv
523 C++ ObjC++
525 fexec-charset=
526 C ObjC C++ ObjC++ Joined RejectNegative
527 -fexec-charset=<cset>   Convert all strings and character constants to character set <cset>
529 fextended-identifiers
530 C ObjC C++ ObjC++
531 Permit universal character names (\\u and \\U) in identifiers
533 finput-charset=
534 C ObjC C++ ObjC++ Joined RejectNegative
535 -finput-charset=<cset>  Specify the default character set for source files
538 fexternal-templates
539 C++ ObjC++
541 ffor-scope
542 C++ ObjC++
543 Scope of for-init-statement variables is local to the loop
545 ffreestanding
546 C ObjC
547 Do not assume that standard C libraries and \"main\" exist
549 fgnu-keywords
550 C++ ObjC++
551 Recognize GNU-defined keywords
553 fgnu-runtime
554 ObjC ObjC++
555 Generate code for GNU runtime environment
557 fguiding-decls
558 C++ ObjC++
560 fhandle-exceptions
561 C++ ObjC++ Optimization
563 fhonor-std
564 C++ ObjC++
566 fhosted
567 C ObjC
568 Assume normal C execution environment
570 fhuge-objects
571 C++ ObjC++
572 Enable support for huge objects
574 fimplement-inlines
575 C++ ObjC++
576 Export functions even if they can be inlined
578 fimplicit-inline-templates
579 C++ ObjC++
580 Emit implicit instantiations of inline templates
582 fimplicit-templates
583 C++ ObjC++
584 Emit implicit instantiations of templates
586 ffriend-injection
587 C++ Var(flag_friend_injection)
588 Inject friend functions into enclosing namespace
590 flabels-ok
591 C++ ObjC++
593 flax-vector-conversions
594 C ObjC C++ ObjC++
595 Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types.
597 fms-extensions
598 C ObjC C++ ObjC++
599 Don't warn about uses of Microsoft extensions
601 fname-mangling-version-
602 C++ ObjC++ Joined
604 fnew-abi
605 C++ ObjC++
607 fnext-runtime
608 ObjC ObjC++
609 Generate code for NeXT (Apple Mac OS X) runtime environment
611 fnil-receivers
612 ObjC ObjC++
613 Assume that receivers of Objective-C messages may be nil
615 fnonansi-builtins
616 C++ ObjC++
618 fnonnull-objects
619 C++ ObjC++
621 ; Generate special '- .cxx_construct' and '- .cxx_destruct' methods
622 ; to initialize any non-POD ivars in Objective-C++ classes.
623 fobjc-call-cxx-cdtors
624 ObjC++ Var(flag_objc_call_cxx_cdtors)
625 Generate special Objective-C methods to initialize/destroy non-POD C++ ivars, if needed
627 fobjc-direct-dispatch
628 ObjC ObjC++ Var(flag_objc_direct_dispatch)
629 Allow fast jumps to the message dispatcher
631 ; Nonzero means that we will allow new ObjC exception syntax (@throw,
632 ; @try, etc.) in source code.
633 fobjc-exceptions
634 ObjC ObjC++ Var(flag_objc_exceptions)
635 Enable Objective-C exception and synchronization syntax
637 fobjc-gc
638 ObjC ObjC++ Var(flag_objc_gc)
639 Enable garbage collection (GC) in Objective-C/Objective-C++ programs
641 ; Nonzero means that we generate NeXT setjmp based exceptions.
642 fobjc-sjlj-exceptions
643 ObjC ObjC++ Var(flag_objc_sjlj_exceptions) Init(-1)
644 Enable Objective-C setjmp exception handling runtime
646 fopenmp
647 C ObjC C++ ObjC++ Var(flag_openmp)
648 Enable OpenMP
650 foperator-names
651 C++ ObjC++
652 Recognize C++ kewords like \"compl\" and \"xor\"
654 foptional-diags
655 C++ ObjC++
656 Enable optional diagnostics
658 fpch-deps
659 C ObjC C++ ObjC++
661 fpch-preprocess
662 C ObjC C++ ObjC++
663 Look for and use PCH files even when preprocessing
665 fpermissive
666 C++ ObjC++
667 Downgrade conformance errors to warnings
669 fpreprocessed
670 C ObjC C++ ObjC++
671 Treat the input file as already preprocessed
673 freplace-objc-classes
674 ObjC ObjC++
675 Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime
677 frepo
678 C++ ObjC++
679 Enable automatic template instantiation
681 frtti
682 C++ ObjC++ Optimization
683 Generate run time type descriptor information
685 fshort-double
686 C ObjC C++ ObjC++ Optimization
687 Use the same size for double as for float
689 fshort-enums
690 C ObjC C++ ObjC++ Optimization
691 Use the narrowest integer type possible for enumeration types
693 fshort-wchar
694 C ObjC C++ ObjC++ Optimization
695 Force the underlying type for \"wchar_t\" to be \"unsigned short\"
697 fsigned-bitfields
698 C ObjC C++ ObjC++
699 When \"signed\" or \"unsigned\" is not given make the bitfield signed
701 fsigned-char
702 C ObjC C++ ObjC++
703 Make \"char\" signed by default
705 fsquangle
706 C++ ObjC++
708 fstats
709 C++ ObjC++
710 Display statistics accumulated during compilation
712 fstrict-prototype
713 C++ ObjC++
715 ftabstop=
716 C ObjC C++ ObjC++ Joined RejectNegative UInteger
717 -ftabstop=<number>      Distance between tab stops for column reporting
719 ftemplate-depth-
720 C++ ObjC++ Joined RejectNegative UInteger
721 -ftemplate-depth-<number>       Specify maximum template instantiation depth
723 fthis-is-variable
724 C++ ObjC++
726 fthreadsafe-statics
727 C++ ObjC++ Optimization
728 -fno-threadsafe-statics Do not generate thread-safe code for initializing local statics
730 funsigned-bitfields
731 C ObjC C++ ObjC++
732 When \"signed\" or \"unsigned\" is not given make the bitfield unsigned
734 funsigned-char
735 C ObjC C++ ObjC++
736 Make \"char\" unsigned by default
738 fuse-cxa-atexit
739 C++ ObjC++
740 Use __cxa_atexit to register destructors
742 fuse-cxa-get-exception-ptr
743 C++ ObjC++
744 Use __cxa_get_exception_ptr in exception handling
746 fvisibility-inlines-hidden
747 C++ ObjC++
748 Marks all inlined methods as having hidden visibility
750 fvtable-gc
751 C++ ObjC++
752 Discard unused virtual functions
754 fvtable-thunks
755 C++ ObjC++
756 Implement vtables using thunks
758 fweak
759 C++ ObjC++
760 Emit common-like symbols as weak symbols
762 fwide-exec-charset=
763 C ObjC C++ ObjC++ Joined RejectNegative
764 -fwide-exec-charset=<cset>      Convert all wide strings and character constants to character set <cset>
766 fworking-directory
767 C ObjC C++ ObjC++
768 Generate a #line directive pointing at the current working directory
770 fxref
771 C++ ObjC++
772 Emit cross referencing information
774 fzero-link
775 ObjC ObjC++
776 Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode
778 gen-decls
779 ObjC ObjC++
780 Dump declarations to a .decl file
782 idirafter
783 C ObjC C++ ObjC++ Joined Separate
784 -idirafter <dir>        Add <dir> to the end of the system include path
786 imacros
787 C ObjC C++ ObjC++ Joined Separate
788 -imacros <file> Accept definition of macros in <file>
790 imultilib
791 C ObjC C++ ObjC++ Joined Separate
792 -imultilib <dir> Set <dir> to be the multilib include subdirectory
794 include
795 C ObjC C++ ObjC++ Joined Separate
796 -include <file> Include the contents of <file> before other files
798 iprefix
799 C ObjC C++ ObjC++ Joined Separate
800 -iprefix <path> Specify <path> as a prefix for next two options
802 isysroot
803 C ObjC C++ ObjC++ Joined Separate
804 -isysroot <dir> Set <dir> to be the system root directory
806 isystem
807 C ObjC C++ ObjC++ Joined Separate
808 -isystem <dir>  Add <dir> to the start of the system include path
810 iquote
811 C ObjC C++ ObjC++ Joined Separate
812 -iquote <dir>   Add <dir> to the end of the quote include path
814 iwithprefix
815 C ObjC C++ ObjC++ Joined Separate
816 -iwithprefix <dir>      Add <dir> to the end of the system include path
818 iwithprefixbefore
819 C ObjC C++ ObjC++ Joined Separate
820 -iwithprefixbefore <dir>        Add <dir> to the end of the main include path
822 lang-asm
823 C Undocumented
825 lang-fortran
826 C Undocumented
828 lang-objc
829 C ObjC C++ ObjC++ Undocumented
831 nostdinc
832 C ObjC C++ ObjC++
833 Do not search standard system include directories (those specified with -isystem will still be used)
835 nostdinc++
836 C++ ObjC++
837 Do not search standard system include directories for C++
840 C ObjC C++ ObjC++ Joined Separate
841 ; Documented in common.opt
843 pedantic
844 C ObjC C++ ObjC++
845 ; Documented in common.opt
847 pedantic-errors
848 C ObjC C++ ObjC++
849 ; Documented in common.opt
851 print-objc-runtime-info
852 ObjC ObjC++
853 Generate C header of platform-specific features
855 print-pch-checksum
856 C ObjC C++ ObjC++
857 Print a checksum of the executable for PCH validity checking, and stop
859 remap
860 C ObjC C++ ObjC++
861 Remap file names when including files
863 std=c++98
864 C++ ObjC++
865 Conform to the ISO 1998 C++ standard
867 std=c++0x
868 C++ ObjC++
869 Conform to the ISO 1998 C++ standard, with extensions that are likely to
870 become a part of the upcoming ISO C++ standard, dubbed C++0x. Note that the
871 extensions enabled by this mode are experimental and may be removed in
872 future releases of GCC.
874 std=c89
875 C ObjC
876 Conform to the ISO 1990 C standard
878 std=c99
879 C ObjC
880 Conform to the ISO 1999 C standard
882 std=c9x
883 C ObjC
884 Deprecated in favor of -std=c99
886 std=gnu++98
887 C++ ObjC++
888 Conform to the ISO 1998 C++ standard with GNU extensions
890 std=gnu++0x
891 C++ ObjC++
892 Conform to the ISO 1998 C++ standard, with GNU extensions and
893 extensions that are likely to become a part of the upcoming ISO C++
894 standard, dubbed C++0x. Note that the extensions enabled by this mode
895 are experimental and may be removed in future releases of GCC.
897 std=gnu89
898 C ObjC
899 Conform to the ISO 1990 C standard with GNU extensions
901 std=gnu99
902 C ObjC
903 Conform to the ISO 1999 C standard with GNU extensions
905 std=gnu9x
906 C ObjC
907 Deprecated in favor of -std=gnu99
909 std=iso9899:1990
910 C ObjC
911 Conform to the ISO 1990 C standard
913 std=iso9899:199409
914 C ObjC
915 Conform to the ISO 1990 C standard as amended in 1994
917 std=iso9899:1999
918 C ObjC
919 Conform to the ISO 1999 C standard
921 std=iso9899:199x
922 C ObjC
923 Deprecated in favor of -std=iso9899:1999
925 traditional-cpp
926 C ObjC C++ ObjC++
927 Enable traditional preprocessing
929 trigraphs
930 C ObjC C++ ObjC++
931 -trigraphs      Support ISO C trigraphs
933 undef
934 C ObjC C++ ObjC++
935 Do not predefine system-specific and GCC-specific macros
938 C ObjC C++ ObjC++
939 Enable verbose output
942 C ObjC C++ ObjC++
943 ; Documented in common.opt
945 ; This comment is to ensure we retain the blank line above.