OSDN Git Service

* g++.dg/cdce3.C: Skip on alpha*-dec-osf5*.
[pf3gnuchains/gcc-fork.git] / gcc / c.opt
index 0635fdc..2e1933c 100644 (file)
--- a/gcc/c.opt
+++ b/gcc/c.opt
@@ -1,11 +1,12 @@
 ; Options for the C, ObjC, C++ and ObjC++ front ends.
 ; Options for the C, ObjC, C++ and ObjC++ front ends.
-; Copyright (C) 2003, 2004, 2005, 2006, 2007 Free Software Foundation, Inc.
+; Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
+; Free Software Foundation, Inc.
 ;
 ; This file is part of GCC.
 ;
 ; GCC is free software; you can redistribute it and/or modify it under
 ; the terms of the GNU General Public License as published by the Free
 ;
 ; This file is part of GCC.
 ;
 ; GCC is free software; you can redistribute it and/or modify it under
 ; the terms of the GNU General Public License as published by the Free
-; Software Foundation; either version 2, or (at your option) any later
+; Software Foundation; either version 3, or (at your option) any later
 ; version.
 ;
 ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
 ; version.
 ;
 ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
@@ -14,9 +15,8 @@
 ; for more details.
 ;
 ; You should have received a copy of the GNU General Public License
 ; for more details.
 ;
 ; You should have received a copy of the GNU General Public License
-; along with GCC; see the file COPYING.  If not, write to the Free
-; Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
-; 02110-1301, USA.
+; along with GCC; see the file COPYING3.  If not see
+; <http://www.gnu.org/licenses/>.
 
 ; See the GCC internals manual for a description of this file's format.
 
 
 ; See the GCC internals manual for a description of this file's format.
 
@@ -113,9 +113,12 @@ C ObjC C++ ObjC++ Joined Separate
 -U<macro>      Undefine <macro>
 
 Wabi
 -U<macro>      Undefine <macro>
 
 Wabi
-C++ ObjC++ Var(warn_abi) Warning
+C ObjC C++ ObjC++ LTO Var(warn_abi) Warning
 Warn about things that will change when compiling with an ABI-compliant compiler
 
 Warn about things that will change when compiling with an ABI-compliant compiler
 
+Wpsabi
+C ObjC C++ ObjC++ LTO Var(warn_psabi) Init(1) Undocumented
+
 Waddress
 C ObjC C++ ObjC++ Var(warn_address) Warning
 Warn about suspicious uses of memory addresses
 Waddress
 C ObjC C++ ObjC++ Var(warn_address) Warning
 Warn about suspicious uses of memory addresses
@@ -132,6 +135,10 @@ Wbad-function-cast
 C ObjC Var(warn_bad_function_cast) Warning
 Warn about casting functions to incompatible types
 
 C ObjC Var(warn_bad_function_cast) Warning
 Warn about casting functions to incompatible types
 
+Wbuiltin-macro-redefined
+C ObjC C++ ObjC++ Warning
+Warn when a built-in preprocessor macro is undefined or redefined
+
 Wc++-compat
 C ObjC Var(warn_cxx_compat) Warning
 Warn about C constructs that are not in the common subset of C and C++
 Wc++-compat
 C ObjC Var(warn_cxx_compat) Warning
 Warn about C constructs that are not in the common subset of C and C++
@@ -164,6 +171,14 @@ Wconversion
 C ObjC C++ ObjC++ Var(warn_conversion) Warning
 Warn for implicit type conversions that may change a value
 
 C ObjC C++ ObjC++ Var(warn_conversion) Warning
 Warn for implicit type conversions that may change a value
 
+Wconversion-null
+C++ ObjC++ Var(warn_conversion_null) Init(1) Warning
+Warn for converting NULL from/to a non-pointer type
+
+Wsign-conversion
+C ObjC C++ ObjC++ Var(warn_sign_conversion) Init(-1)
+Warn for implicit type conversions between signed and unsigned integers
+
 Wctor-dtor-privacy
 C++ ObjC++ Var(warn_ctor_dtor_privacy) Warning
 Warn when all constructors and destructors are private
 Wctor-dtor-privacy
 C++ ObjC++ Var(warn_ctor_dtor_privacy) Warning
 Warn when all constructors and destructors are private
@@ -173,8 +188,8 @@ C ObjC Var(warn_declaration_after_statement) Warning
 Warn when a declaration is found after a statement
 
 Wdeprecated
 Warn when a declaration is found after a statement
 
 Wdeprecated
-C++ ObjC++ Var(warn_deprecated) Init(1) Warning
-Warn about deprecated compiler features
+C C++ ObjC ObjC++ Var(warn_deprecated) Init(1) Warning
+Warn if a deprecated compiler feature, class, method, or field is used
 
 Wdiv-by-zero
 C ObjC C++ ObjC++ Var(warn_div_by_zero) Init(1) Warning
 
 Wdiv-by-zero
 C ObjC C++ ObjC++ Var(warn_div_by_zero) Init(1) Warning
@@ -192,6 +207,10 @@ Wendif-labels
 C ObjC C++ ObjC++ Warning
 Warn about stray tokens after #elif and #endif
 
 C ObjC C++ ObjC++ Warning
 Warn about stray tokens after #elif and #endif
 
+Wenum-compare
+C ObjC C++ ObjC++ Var(warn_enum_compare) Init(-1) Warning
+Warn about comparison of different enum types
+
 Werror
 C ObjC C++ ObjC++
 ; Documented in common.opt
 Werror
 C ObjC C++ ObjC++
 ; Documented in common.opt
@@ -235,6 +254,10 @@ Warn about zero-length formats
 Wformat=
 C ObjC C++ ObjC++ Joined Warning
 
 Wformat=
 C ObjC C++ ObjC++ Joined Warning
 
+Wignored-qualifiers
+C C++ Var(warn_ignored_qualifiers) Init(-1) Warning
+Warn whenever type qualifiers are ignored.
+
 Winit-self
 C ObjC C++ ObjC++ Var(warn_init_self) Warning
 Warn about variables which are initialized to themselves
 Winit-self
 C ObjC C++ ObjC++ Var(warn_init_self) Warning
 Warn about variables which are initialized to themselves
@@ -251,11 +274,10 @@ C ObjC Var(warn_implicit_int) Warning
 Warn when a declaration does not specify a type
 
 Wimport
 Warn when a declaration does not specify a type
 
 Wimport
-C ObjC C++ ObjC++
-Deprecated.  This switch has no effect
+C ObjC C++ ObjC++ Undocumented
 
 Wint-to-pointer-cast
 
 Wint-to-pointer-cast
-C ObjC Var(warn_int_to_pointer_cast) Init(1) Warning
+C ObjC C++ ObjC++ Var(warn_int_to_pointer_cast) Init(1) Warning
 Warn when there is a cast to a pointer from an integer of a different size
 
 Winvalid-offsetof
 Warn when there is a cast to a pointer from an integer of a different size
 
 Winvalid-offsetof
@@ -266,12 +288,20 @@ Winvalid-pch
 C ObjC C++ ObjC++ Warning
 Warn about PCH files that are found but not used
 
 C ObjC C++ ObjC++ Warning
 Warn about PCH files that are found but not used
 
+Wjump-misses-init
+C ObjC Var(warn_jump_misses_init) Init(-1) Warning
+Warn when a jump misses a variable initialization
+
+Wlogical-op
+C ObjC C++ ObjC++ Var(warn_logical_op) Init(0) Warning 
+Warn when a logical operator is suspiciously always evaluating to true or false
+
 Wlong-long
 Wlong-long
-C ObjC C++ ObjC++ Var(warn_long_long) Init(1) Warning
+C ObjC C++ ObjC++ Var(warn_long_long) Init(-1) Warning
 Do not warn about using \"long long\" when -pedantic
 
 Wmain
 Do not warn about using \"long long\" when -pedantic
 
 Wmain
-C ObjC C++ ObjC++ Warning
+C ObjC C++ ObjC++ Var(warn_main) Init(-1) Warning
 Warn about suspicious declarations of \"main\"
 
 Wmissing-braces
 Warn about suspicious declarations of \"main\"
 
 Wmissing-braces
@@ -350,6 +380,10 @@ Woverride-init
 C ObjC Var(warn_override_init) Init(-1) Warning
 Warn about overriding initializers without side effects
 
 C ObjC Var(warn_override_init) Init(-1) Warning
 Warn about overriding initializers without side effects
 
+Wpacked-bitfield-compat
+C ObjC C++ ObjC++ Var(warn_packed_bitfield_compat) Init(-1) Warning
+Warn about packed bit-fields whose offset changed in GCC 4.4
+
 Wparentheses
 C ObjC C++ ObjC++ Var(warn_parentheses) Warning
 Warn about possibly missing parentheses
 Wparentheses
 C ObjC C++ ObjC++ Var(warn_parentheses) Warning
 Warn about possibly missing parentheses
@@ -414,13 +448,17 @@ Wstrict-selector-match
 ObjC ObjC++ Var(warn_strict_selector_match) Warning
 Warn if type signatures of candidate methods do not match exactly
 
 ObjC ObjC++ Var(warn_strict_selector_match) Warning
 Warn if type signatures of candidate methods do not match exactly
 
+Wsync-nand
+C C++ Var(warn_sync_nand) Init(1) Warning
+Warn when __sync_fetch_and_nand and __sync_nand_and_fetch built-in functions are used
+
 Wsynth
 C++ ObjC++ Var(warn_synth) Warning
 Wsynth
 C++ ObjC++ Var(warn_synth) Warning
-Warn when synthesis behavior differs from Cfront
+Deprecated.  This switch has no effect
 
 Wsystem-headers
 C ObjC C++ ObjC++ Warning
 
 Wsystem-headers
 C ObjC C++ ObjC++ Warning
-Do not suppress warnings from system headers
+; Documented in common.opt
 
 Wtraditional
 C ObjC Var(warn_traditional) Warning
 
 Wtraditional
 C ObjC Var(warn_traditional) Warning
@@ -446,10 +484,18 @@ Wunknown-pragmas
 C ObjC C++ ObjC++ Warning
 Warn about unrecognized pragmas
 
 C ObjC C++ ObjC++ Warning
 Warn about unrecognized pragmas
 
+Wunsuffixed-float-constants
+C ObjC Var(warn_unsuffixed_float_constants) Warning
+Warn about unsuffixed float constants
+
 Wunused-macros
 C ObjC C++ ObjC++ Warning
 Warn about macros defined in the main file that are not used
 
 Wunused-macros
 C ObjC C++ ObjC++ Warning
 Warn about macros defined in the main file that are not used
 
+Wunused-result
+C ObjC C++ ObjC++ Var(warn_unused_result) Init(1) Warning
+Warn if a caller of a function, marked with attribute warn_unused_result, does not use its return value
+
 Wvariadic-macros
 C ObjC C++ ObjC++ Warning
 Do not warn about using variadic macros when -pedantic
 Wvariadic-macros
 C ObjC C++ ObjC++ Warning
 Do not warn about using variadic macros when -pedantic
@@ -458,6 +504,10 @@ Wvla
 C ObjC C++ ObjC++ Var(warn_vla) Init(-1) Warning
 Warn if a variable length array is used
 
 C ObjC C++ ObjC++ Var(warn_vla) Init(-1) Warning
 Warn if a variable length array is used
 
+Wvolatile-register-var
+C ObjC C++ ObjC++ Var(warn_volatile_register_var) Warning
+Warn when a register variable is declared volatile
+
 Wwrite-strings
 C ObjC C++ ObjC++ Var(warn_write_strings) Warning
 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.
 Wwrite-strings
 C ObjC C++ ObjC++ Var(warn_write_strings) Warning
 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.
@@ -512,10 +562,18 @@ fconstant-string-class=
 ObjC ObjC++ Joined
 -fconst-string-class=<name>    Use class <name> for constant strings
 
 ObjC ObjC++ Joined
 -fconst-string-class=<name>    Use class <name> for constant strings
 
+fdeduce-init-list
+C++ ObjC++ Var(flag_deduce_init_list) Init(1)
+-fno-deduce-init-list  disable deduction of std::initializer_list for a template type parameter from a brace-enclosed initializer-list
+
 fdefault-inline
 C++ ObjC++
 Inline member functions by default
 
 fdefault-inline
 C++ ObjC++
 Inline member functions by default
 
+fdirectives-only
+C ObjC C++ ObjC++
+Preprocess directives only.
+
 fdollars-in-identifiers
 C ObjC C++ ObjC++
 Permit '$' as an identifier character
 fdollars-in-identifiers
 C ObjC C++ ObjC++
 Permit '$' as an identifier character
@@ -657,11 +715,11 @@ Enable Objective-C setjmp exception handling runtime
 
 fopenmp
 C ObjC C++ ObjC++ Var(flag_openmp)
 
 fopenmp
 C ObjC C++ ObjC++ Var(flag_openmp)
-Enable OpenMP
+Enable OpenMP (implies -frecursive in Fortran)
 
 foperator-names
 C++ ObjC++
 
 foperator-names
 C++ ObjC++
-Recognize C++ kewords like \"compl\" and \"xor\"
+Recognize C++ keywords like \"compl\" and \"xor\"
 
 foptional-diags
 C++ ObjC++
 
 foptional-diags
 C++ ObjC++
@@ -682,6 +740,10 @@ fpreprocessed
 C ObjC C++ ObjC++
 Treat the input file as already preprocessed
 
 C ObjC C++ ObjC++
 Treat the input file as already preprocessed
 
+fpretty-templates
+C++ ObjC++
+-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments
+
 freplace-objc-classes
 ObjC ObjC++
 Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime
 freplace-objc-classes
 ObjC ObjC++
 Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime
@@ -711,7 +773,7 @@ C ObjC C++ ObjC++
 When \"signed\" or \"unsigned\" is not given make the bitfield signed
 
 fsigned-char
 When \"signed\" or \"unsigned\" is not given make the bitfield signed
 
 fsigned-char
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ LTO
 Make \"char\" signed by default
 
 fsquangle
 Make \"char\" signed by default
 
 fsquangle
@@ -729,8 +791,11 @@ C ObjC C++ ObjC++ Joined RejectNegative UInteger
 -ftabstop=<number>     Distance between tab stops for column reporting
 
 ftemplate-depth-
 -ftabstop=<number>     Distance between tab stops for column reporting
 
 ftemplate-depth-
+C++ ObjC++ Joined RejectNegative UInteger Undocumented
+
+ftemplate-depth=
 C++ ObjC++ Joined RejectNegative UInteger
 C++ ObjC++ Joined RejectNegative UInteger
--ftemplate-depth-<number>      Specify maximum template instantiation depth
+-ftemplate-depth=<number>      Specify maximum template instantiation depth
 
 fthis-is-variable
 C++ ObjC++
 
 fthis-is-variable
 C++ ObjC++
@@ -744,7 +809,7 @@ C ObjC C++ ObjC++
 When \"signed\" or \"unsigned\" is not given make the bitfield unsigned
 
 funsigned-char
 When \"signed\" or \"unsigned\" is not given make the bitfield unsigned
 
 funsigned-char
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ LTO
 Make \"char\" unsigned by default
 
 fuse-cxa-atexit
 Make \"char\" unsigned by default
 
 fuse-cxa-atexit
@@ -759,6 +824,10 @@ fvisibility-inlines-hidden
 C++ ObjC++
 Marks all inlined methods as having hidden visibility
 
 C++ ObjC++
 Marks all inlined methods as having hidden visibility
 
+fvisibility-ms-compat
+C++ ObjC++ Var(flag_visibility_ms_compat)
+Changes visibility to match Microsoft Visual Studio by default
+
 fvtable-gc
 C++ ObjC++
 Discard unused virtual functions
 fvtable-gc
 C++ ObjC++
 Discard unused virtual functions
@@ -813,7 +882,7 @@ C ObjC C++ ObjC++ Joined Separate
 
 imultilib
 C ObjC C++ ObjC++ Joined Separate
 
 imultilib
 C ObjC C++ ObjC++ Joined Separate
--imultilib <dir> Set <dir> to be the multilib include subdirectory
+-imultilib <dir>       Set <dir> to be the multilib include subdirectory
 
 include
 C ObjC C++ ObjC++ Joined Separate
 
 include
 C ObjC C++ ObjC++ Joined Separate
@@ -846,9 +915,6 @@ C ObjC C++ ObjC++ Joined Separate
 lang-asm
 C Undocumented
 
 lang-asm
 C Undocumented
 
-lang-fortran
-C Undocumented
-
 lang-objc
 C ObjC C++ ObjC++ Undocumented
 
 lang-objc
 C ObjC C++ ObjC++ Undocumented
 
@@ -895,10 +961,18 @@ become a part of the upcoming ISO C++ standard, dubbed C++0x. Note that the
 extensions enabled by this mode are experimental and may be removed in
 future releases of GCC.
 
 extensions enabled by this mode are experimental and may be removed in
 future releases of GCC.
 
+std=c1x
+C ObjC
+Conform to the ISO 201X C standard draft (experimental and incomplete support)
+
 std=c89
 C ObjC
 Conform to the ISO 1990 C standard
 
 std=c89
 C ObjC
 Conform to the ISO 1990 C standard
 
+std=c90
+C ObjC
+Conform to the ISO 1990 C standard
+
 std=c99
 C ObjC
 Conform to the ISO 1999 C standard
 std=c99
 C ObjC
 Conform to the ISO 1999 C standard
@@ -918,10 +992,18 @@ extensions that are likely to become a part of the upcoming ISO C++
 standard, dubbed C++0x. Note that the extensions enabled by this mode
 are experimental and may be removed in future releases of GCC.
 
 standard, dubbed C++0x. Note that the extensions enabled by this mode
 are experimental and may be removed in future releases of GCC.
 
+std=gnu1x
+C ObjC
+Conform to the ISO 201X C standard draft with GNU extensions (experimental and incomplete support)
+
 std=gnu89
 C ObjC
 Conform to the ISO 1990 C standard with GNU extensions
 
 std=gnu89
 C ObjC
 Conform to the ISO 1990 C standard with GNU extensions
 
+std=gnu90
+C ObjC
+Conform to the ISO 1990 C standard with GNU extensions
+
 std=gnu99
 C ObjC
 Conform to the ISO 1999 C standard with GNU extensions
 std=gnu99
 C ObjC
 Conform to the ISO 1999 C standard with GNU extensions
@@ -959,7 +1041,7 @@ C ObjC C++ ObjC++
 Do not predefine system-specific and GCC-specific macros
 
 v
 Do not predefine system-specific and GCC-specific macros
 
 v
-C ObjC C++ ObjC++
+Common C ObjC C++ ObjC++
 Enable verbose output
 
 w
 Enable verbose output
 
 w