summaryrefslogtreecommitdiff
path: root/gcc/c-family
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-07 16:46:23 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2010-06-07 16:46:23 +0000
commit4aafe9137a7ad2993c19a4b431f0e292c38a1b2a (patch)
treea31a33d86ad9aee9da47e034ee713c62de8fd078 /gcc/c-family
parent253d7fd068065bd8b26dae76216f446b5fe13d36 (diff)
downloadgcc-4aafe9137a7ad2993c19a4b431f0e292c38a1b2a.tar.gz
* common.opt (fira-verbose): Use Var.
(fpcc-struct-return): Use Init instead of VarExists. * defaults.h (DEFAULT_PCC_STRUCT_RETURN): Move definition from toplev.c. * flags.h (flag_signed_char, flag_short_enums, flag_pcc_struct_return, flag_ira_verbose, flag_detailed_statistics, flag_remove_unreachable_functions): Remove. * toplev.c (flag_detailed_statistics, flag_signed_char, flag_short_enums, flag_pcc_struct_return, flag_ira_verbose): Remove. (DEFAULT_PCC_STRUCT_RETURN): Move definition to defaults.h. * toplev.h (flag_crossjumping, flag_if_conversion, flag_if_conversion2, flag_keep_static_consts, flag_peel_loops, flag_rerun_cse_after_loop, flag_thread_jumps, flag_tracer, flag_unroll_loops, flag_unroll_all_loops, flag_unswitch_loops, flag_cprop_registers, time_report, flag_ira_loop_pressure, flag_ira_coalesce, flag_ira_move_spills, flag_ira_share_save_slots, flag_ira_share_spill_slots): Remove. c-family: * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin, flag_no_nonansi_builtin, flag_short_double, flag_short_wchar, flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm, flag_signed_bitfields, warn_strict_null_sentinel, flag_nil_receivers, flag_zero_link, flag_replace_objc_classes, flag_gen_declaration, flag_no_gnu_keywords, flag_implement_inlines, flag_implicit_templates, flag_implicit_inline_templates, flag_optional_diags, flag_elide_constructors, flag_default_inline, flag_rtti, flag_conserve_space, flag_access_control, flag_check_new, flag_new_for_scope, flag_weak, flag_working_directory, flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs, flag_threadsafe_statics, flag_pretty_templates): Remove. * c-common.h (flag_preprocess_only, flag_nil_receivers, flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link, flag_replace_objc_classes, flag_undef, flag_no_builtin, flag_no_nonansi_builtin, flag_short_double, flag_short_wchar, flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm, flag_const_strings, flag_signed_bitfields, flag_gen_declaration, flag_no_gnu_keywords, flag_implement_inlines, flag_implicit_templates, flag_implicit_inline_templates, flag_optional_diags, flag_elide_constructors, flag_default_inline, flag_rtti, flag_conserve_space, flag_access_control, flag_check_new, flag_new_for_scope, flag_weak, flag_working_directory, flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs, flag_threadsafe_statics, flag_pretty_templates, warn_strict_null_sentinel): Remove. * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm, fbuiltin, fcheck-new, fconserve-space, felide-constructors, fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines, fimplicit-inline-templates, fimplicit-templates, flax-vector-conversions, fms-extensions, fnil-receivers, fnonansi-builtins, fpretty-templates, freplace-objc-classes, frtti, fshort-double, fshort-enums, fshort-wchar, fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics, funsigned-bitfields, funsigned-char, fuse-cxa-atexit, fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link, gen-decls, undef): Use Var. (fdefault-inline, foptional-diags): Document as doing nothing. * c-opts.c (c_common_handle_option): Remove cases for options now using Var. Mark ignored options as such. fortran: * lang.opt (fshort-enums): Define using Var and VarExists. * options.c (gfc_handle_option): Don't set flag_short_enums here. lto: * lto-lang.c (flag_no_builtin, flag_no_nonansi_builtin): Remove. (lto_handle_option): Don't set flag_signed_char here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160384 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/c-family')
-rw-r--r--gcc/c-family/ChangeLog46
-rw-r--r--gcc/c-family/c-common.c170
-rw-r--r--gcc/c-family/c-common.h182
-rw-r--r--gcc/c-family/c-opts.c152
-rw-r--r--gcc/c-family/c.opt78
5 files changed, 87 insertions, 541 deletions
diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog
index f250139ed4d..d0b51567eae 100644
--- a/gcc/c-family/ChangeLog
+++ b/gcc/c-family/ChangeLog
@@ -1,3 +1,49 @@
+2010-06-07 Joseph Myers <joseph@codesourcery.com>
+
+ * c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
+ flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
+ flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
+ flag_signed_bitfields, warn_strict_null_sentinel,
+ flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
+ flag_gen_declaration, flag_no_gnu_keywords,
+ flag_implement_inlines, flag_implicit_templates,
+ flag_implicit_inline_templates, flag_optional_diags,
+ flag_elide_constructors, flag_default_inline, flag_rtti,
+ flag_conserve_space, flag_access_control, flag_check_new,
+ flag_new_for_scope, flag_weak, flag_working_directory,
+ flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
+ flag_enforce_eh_specs, flag_threadsafe_statics,
+ flag_pretty_templates): Remove.
+ * c-common.h (flag_preprocess_only, flag_nil_receivers,
+ flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
+ flag_replace_objc_classes, flag_undef, flag_no_builtin,
+ flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
+ flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
+ flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
+ flag_no_gnu_keywords, flag_implement_inlines,
+ flag_implicit_templates, flag_implicit_inline_templates,
+ flag_optional_diags, flag_elide_constructors, flag_default_inline,
+ flag_rtti, flag_conserve_space, flag_access_control,
+ flag_check_new, flag_new_for_scope, flag_weak,
+ flag_working_directory, flag_use_cxa_atexit,
+ flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
+ flag_threadsafe_statics, flag_pretty_templates,
+ warn_strict_null_sentinel): Remove.
+ * c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
+ fbuiltin, fcheck-new, fconserve-space, felide-constructors,
+ fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
+ fimplicit-inline-templates, fimplicit-templates,
+ flax-vector-conversions, fms-extensions, fnil-receivers,
+ fnonansi-builtins, fpretty-templates, freplace-objc-classes,
+ frtti, fshort-double, fshort-enums, fshort-wchar,
+ fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
+ funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
+ fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
+ gen-decls, undef): Use Var.
+ (fdefault-inline, foptional-diags): Document as doing nothing.
+ * c-opts.c (c_common_handle_option): Remove cases for options now
+ using Var. Mark ignored options as such.
+
2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
* c-common.c: Moved to here from parent directory.
diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c
index 545f2e28008..c3fa8e654dc 100644
--- a/gcc/c-family/c-common.c
+++ b/gcc/c-family/c-common.c
@@ -169,10 +169,6 @@ tree c_global_trees[CTI_MAX];
/* Switches common to the C front ends. */
-/* Nonzero if preprocessing only. */
-
-int flag_preprocess_only;
-
/* Nonzero means don't output line number information. */
char flag_no_line_commands;
@@ -203,42 +199,6 @@ const char *pch_file;
user's namespace. */
int flag_iso;
-/* Nonzero if -undef was given. It suppresses target built-in macros
- and assertions. */
-int flag_undef;
-
-/* Nonzero means don't recognize the non-ANSI builtin functions. */
-
-int flag_no_builtin;
-
-/* Nonzero means don't recognize the non-ANSI builtin functions.
- -ansi sets this. */
-
-int flag_no_nonansi_builtin;
-
-/* Nonzero means give `double' the same size as `float'. */
-
-int flag_short_double;
-
-/* Nonzero means give `wchar_t' the same size as `short'. */
-
-int flag_short_wchar;
-
-/* Nonzero means allow implicit conversions between vectors with
- differing numbers of subparts and/or differing element types. */
-int flag_lax_vector_conversions;
-
-/* Nonzero means allow Microsoft extensions without warnings or errors. */
-int flag_ms_extensions;
-
-/* Nonzero means don't recognize the keyword `asm'. */
-
-int flag_no_asm;
-
-/* Nonzero means to treat bitfields as signed unless they say `unsigned'. */
-
-int flag_signed_bitfields = 1;
-
/* Warn about #pragma directives that are not recognized. */
int warn_unknown_pragmas; /* Tri state variable. */
@@ -248,27 +208,6 @@ int warn_unknown_pragmas; /* Tri state variable. */
int warn_format;
-/* Warn about using __null (as NULL in C++) as sentinel. For code compiled
- with GCC this doesn't matter as __null is guaranteed to have the right
- size. */
-
-int warn_strict_null_sentinel;
-
-/* Zero means that faster, ...NonNil variants of objc_msgSend...
- calls will be used in ObjC; passing nil receivers to such calls
- will most likely result in crashes. */
-int flag_nil_receivers = 1;
-
-/* Nonzero means that code generation will be altered to support
- "zero-link" execution. This currently affects ObjC only, but may
- affect other languages in the future. */
-int flag_zero_link = 0;
-
-/* Nonzero means emit an '__OBJC, __image_info' for the current translation
- unit. It will inform the ObjC runtime that class definition(s) herein
- contained are to replace one(s) previously loaded. */
-int flag_replace_objc_classes = 0;
-
/* C/ObjC language option variables. */
@@ -297,11 +236,6 @@ int flag_hosted = 1;
/* ObjC language option variables. */
-/* Open and close the file for outputting class declarations, if
- requested (ObjC). */
-
-int flag_gen_declaration;
-
/* Tells the compiler that this is a special run. Do not perform any
compiling, instead we are to test some platform dependent features
and output a C header file with appropriate definitions. */
@@ -316,119 +250,15 @@ const char *constant_string_class_name;
/* C++ language option variables. */
-/* Nonzero means don't recognize any extension keywords. */
-
-int flag_no_gnu_keywords;
-
-/* Nonzero means do emit exported implementations of functions even if
- they can be inlined. */
-
-int flag_implement_inlines = 1;
-
-/* Nonzero means that implicit instantiations will be emitted if needed. */
-
-int flag_implicit_templates = 1;
-
-/* Nonzero means that implicit instantiations of inline templates will be
- emitted if needed, even if instantiations of non-inline templates
- aren't. */
-
-int flag_implicit_inline_templates = 1;
-
/* Nonzero means generate separate instantiation control files and
juggle them at link time. */
int flag_use_repository;
-/* Nonzero if we want to issue diagnostics that the standard says are not
- required. */
-
-int flag_optional_diags = 1;
-
-/* Nonzero means we should attempt to elide constructors when possible. */
-
-int flag_elide_constructors = 1;
-
-/* Nonzero means that member functions defined in class scope are
- inline by default. */
-
-int flag_default_inline = 1;
-
-/* Controls whether compiler generates 'type descriptor' that give
- run-time type information. */
-
-int flag_rtti = 1;
-
-/* Nonzero if we want to conserve space in the .o files. We do this
- by putting uninitialized data and runtime initialized data into
- .common instead of .data at the expense of not flagging multiple
- definitions. */
-
-int flag_conserve_space;
-
-/* Nonzero if we want to obey access control semantics. */
-
-int flag_access_control = 1;
-
-/* Nonzero if we want to check the return value of new and avoid calling
- constructors if it is a null pointer. */
-
-int flag_check_new;
-
/* The C++ dialect being used. C++98 is the default. */
enum cxx_dialect cxx_dialect = cxx98;
-/* Nonzero if we want the new ISO rules for pushing a new scope for `for'
- initialization variables.
- 0: Old rules, set by -fno-for-scope.
- 2: New ISO rules, set by -ffor-scope.
- 1: Try to implement new ISO rules, but with backup compatibility
- (and warnings). This is the default, for now. */
-
-int flag_new_for_scope = 1;
-
-/* Nonzero if we want to emit defined symbols with common-like linkage as
- weak symbols where possible, in order to conform to C++ semantics.
- Otherwise, emit them as local symbols. */
-
-int flag_weak = 1;
-
-/* 0 means we want the preprocessor to not emit line directives for
- the current working directory. 1 means we want it to do it. -1
- means we should decide depending on whether debugging information
- is being emitted or not. */
-
-int flag_working_directory = -1;
-
-/* Nonzero to use __cxa_atexit, rather than atexit, to register
- destructors for local statics and global objects. '2' means it has been
- set nonzero as a default, not by a command-line flag. */
-
-int flag_use_cxa_atexit = DEFAULT_USE_CXA_ATEXIT;
-
-/* Nonzero to use __cxa_get_exception_ptr in C++ exception-handling
- code. '2' means it has not been set explicitly on the command line. */
-
-int flag_use_cxa_get_exception_ptr = 2;
-
-/* Nonzero means to implement standard semantics for exception
- specifications, calling unexpected if an exception is thrown that
- doesn't match the specification. Zero means to treat them as
- assertions and optimize accordingly, but not check them. */
-
-int flag_enforce_eh_specs = 1;
-
-/* Nonzero means to generate thread-safe code for initializing local
- statics. */
-
-int flag_threadsafe_statics = 1;
-
-/* Nonzero if we want to pretty-print template specializations as the
- template signature followed by the arguments. */
-
-int flag_pretty_templates = 1;
-
/* Maximum template instantiation depth. This limit exists to limit the
time it takes to notice infinite template instantiations; the default
value of 1024 is likely to be in the next C++ standard. */
diff --git a/gcc/c-family/c-common.h b/gcc/c-family/c-common.h
index 5fda1ab7e44..c6701b8bb07 100644
--- a/gcc/c-family/c-common.h
+++ b/gcc/c-family/c-common.h
@@ -480,32 +480,6 @@ extern bool has_c_linkage (const_tree decl);
/* Switches common to the C front ends. */
-/* Nonzero if prepreprocessing only. */
-
-extern int flag_preprocess_only;
-
-/* Zero means that faster, ...NonNil variants of objc_msgSend...
- calls will be used in ObjC; passing nil receivers to such calls
- will most likely result in crashes. */
-extern int flag_nil_receivers;
-
-/* Nonzero means that we will allow new ObjC exception syntax (@throw,
- @try, etc.) in source code. */
-extern int flag_objc_exceptions;
-
-/* Nonzero means that we generate NeXT setjmp based exceptions. */
-extern int flag_objc_sjlj_exceptions;
-
-/* Nonzero means that code generation will be altered to support
- "zero-link" execution. This currently affects ObjC only, but may
- affect other languages in the future. */
-extern int flag_zero_link;
-
-/* Nonzero means emit an '__OBJC, __image_info' for the current translation
- unit. It will inform the ObjC runtime that class definition(s) herein
- contained are to replace one(s) previously loaded. */
-extern int flag_replace_objc_classes;
-
/* Nonzero means don't output line number information. */
extern char flag_no_line_commands;
@@ -538,48 +512,6 @@ extern const char *pch_file;
extern int flag_iso;
-/* Nonzero if -undef was given. It suppresses target built-in macros
- and assertions. */
-
-extern int flag_undef;
-
-/* Nonzero means don't recognize the non-ANSI builtin functions. */
-
-extern int flag_no_builtin;
-
-/* Nonzero means don't recognize the non-ANSI builtin functions.
- -ansi sets this. */
-
-extern int flag_no_nonansi_builtin;
-
-/* Nonzero means give `double' the same size as `float'. */
-
-extern int flag_short_double;
-
-/* Nonzero means give `wchar_t' the same size as `short'. */
-
-extern int flag_short_wchar;
-
-/* Nonzero means allow implicit conversions between vectors with
- differing numbers of subparts and/or differing element types. */
-extern int flag_lax_vector_conversions;
-
-/* Nonzero means allow Microsoft extensions without warnings or errors. */
-extern int flag_ms_extensions;
-
-/* Nonzero means don't recognize the keyword `asm'. */
-
-extern int flag_no_asm;
-
-/* Nonzero means give string constants the type `const char *', as mandated
- by the standard. */
-
-extern int flag_const_strings;
-
-/* Nonzero means to treat bitfields as signed unless they say `unsigned'. */
-
-extern int flag_signed_bitfields;
-
/* Warn about #pragma directives that are not recognized. */
extern int warn_unknown_pragmas; /* Tri state variable. */
@@ -617,11 +549,6 @@ extern int flag_hosted;
/* ObjC language option variables. */
-/* Open and close the file for outputting class declarations, if
- requested (ObjC). */
-
-extern int flag_gen_declaration;
-
/* Tells the compiler that this is a special run. Do not perform any
compiling, instead we are to test some platform dependent features
and output a C header file with appropriate definitions. */
@@ -636,65 +563,11 @@ extern const char *constant_string_class_name;
/* C++ language option variables. */
-/* Nonzero means don't recognize any extension keywords. */
-
-extern int flag_no_gnu_keywords;
-
-/* Nonzero means do emit exported implementations of functions even if
- they can be inlined. */
-
-extern int flag_implement_inlines;
-
-/* Nonzero means that implicit instantiations will be emitted if needed. */
-
-extern int flag_implicit_templates;
-
-/* Nonzero means that implicit instantiations of inline templates will be
- emitted if needed, even if instantiations of non-inline templates
- aren't. */
-
-extern int flag_implicit_inline_templates;
-
/* Nonzero means generate separate instantiation control files and
juggle them at link time. */
extern int flag_use_repository;
-/* Nonzero if we want to issue diagnostics that the standard says are not
- required. */
-
-extern int flag_optional_diags;
-
-/* Nonzero means we should attempt to elide constructors when possible. */
-
-extern int flag_elide_constructors;
-
-/* Nonzero means that member functions defined in class scope are
- inline by default. */
-
-extern int flag_default_inline;
-
-/* Controls whether compiler generates 'type descriptor' that give
- run-time type information. */
-
-extern int flag_rtti;
-
-/* Nonzero if we want to conserve space in the .o files. We do this
- by putting uninitialized data and runtime initialized data into
- .common instead of .data at the expense of not flagging multiple
- definitions. */
-
-extern int flag_conserve_space;
-
-/* Nonzero if we want to obey access control semantics. */
-
-extern int flag_access_control;
-
-/* Nonzero if we want to check the return value of new and avoid calling
- constructors if it is a null pointer. */
-
-extern int flag_check_new;
-
/* The supported C++ dialects. */
enum cxx_dialect {
@@ -708,61 +581,6 @@ enum cxx_dialect {
/* The C++ dialect being used. C++98 is the default. */
extern enum cxx_dialect cxx_dialect;
-/* Nonzero if we want the new ISO rules for pushing a new scope for `for'
- initialization variables.
- 0: Old rules, set by -fno-for-scope.
- 2: New ISO rules, set by -ffor-scope.
- 1: Try to implement new ISO rules, but with backup compatibility
- (and warnings). This is the default, for now. */
-
-extern int flag_new_for_scope;
-
-/* Nonzero if we want to emit defined symbols with common-like linkage as
- weak symbols where possible, in order to conform to C++ semantics.
- Otherwise, emit them as local symbols. */
-
-extern int flag_weak;
-
-/* 0 means we want the preprocessor to not emit line directives for
- the current working directory. 1 means we want it to do it. -1
- means we should decide depending on whether debugging information
- is being emitted or not. */
-
-extern int flag_working_directory;
-
-/* Nonzero to use __cxa_atexit, rather than atexit, to register
- destructors for local statics and global objects. */
-
-extern int flag_use_cxa_atexit;
-
-/* Nonzero to use __cxa_get_exception_ptr in the C++ exception-handling
- logic. */
-
-extern int flag_use_cxa_get_exception_ptr;
-
-/* Nonzero means to implement standard semantics for exception
- specifications, calling unexpected if an exception is thrown that
- doesn't match the specification. Zero means to treat them as
- assertions and optimize accordingly, but not check them. */
-
-extern int flag_enforce_eh_specs;
-
-/* Nonzero (the default) means to generate thread-safe code for
- initializing local statics. */
-
-extern int flag_threadsafe_statics;
-
-/* Nonzero if we want to pretty-print template specializations as the
- template signature followed by the arguments. */
-
-extern int flag_pretty_templates;
-
-/* Warn about using __null (as NULL in C++) as sentinel. For code compiled
- with GCC this doesn't matter as __null is guaranteed to have the right
- size. */
-
-extern int warn_strict_null_sentinel;
-
/* Maximum template instantiation depth. This limit is rather
arbitrary, but it exists to limit the time it takes to notice
infinite template instantiations. */
diff --git a/gcc/c-family/c-opts.c b/gcc/c-family/c-opts.c
index 08592f58e4b..a48dea1e68d 100644
--- a/gcc/c-family/c-opts.c
+++ b/gcc/c-family/c-opts.c
@@ -395,10 +395,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
defer_opt (code, arg);
break;
- case OPT_E:
- flag_preprocess_only = 1;
- break;
-
case OPT_H:
cpp_opts->print_include_names = 1;
break;
@@ -462,10 +458,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
flag_no_line_commands = 1;
break;
- case OPT_fworking_directory:
- flag_working_directory = value;
- break;
-
case OPT_U:
defer_opt (code, arg);
break;
@@ -613,10 +605,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
warn_return_type = value;
break;
- case OPT_Wstrict_null_sentinel:
- warn_strict_null_sentinel = value;
- break;
-
case OPT_Wtraditional:
cpp_opts->warn_traditional = value;
break;
@@ -692,18 +680,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
warning (0, "switch %qs is no longer supported", option->opt_text);
break;
- case OPT_faccess_control:
- flag_access_control = value;
- break;
-
- case OPT_fasm:
- flag_no_asm = !value;
- break;
-
- case OPT_fbuiltin:
- flag_no_builtin = !value;
- break;
-
case OPT_fbuiltin_:
if (value)
result = 0;
@@ -727,70 +703,18 @@ c_common_handle_option (size_t scode, const char *arg, int value,
flag_no_builtin = !value;
break;
- case OPT_fshort_double:
- flag_short_double = value;
- break;
-
- case OPT_fshort_enums:
- flag_short_enums = value;
- break;
-
- case OPT_fshort_wchar:
- flag_short_wchar = value;
- break;
-
- case OPT_fsigned_bitfields:
- flag_signed_bitfields = value;
- break;
-
- case OPT_fsigned_char:
- flag_signed_char = value;
- break;
-
- case OPT_funsigned_bitfields:
- flag_signed_bitfields = !value;
- break;
-
- case OPT_funsigned_char:
- flag_signed_char = !value;
- break;
-
- case OPT_fcheck_new:
- flag_check_new = value;
- break;
-
- case OPT_fconserve_space:
- flag_conserve_space = value;
- break;
-
case OPT_fconstant_string_class_:
constant_string_class_name = arg;
break;
case OPT_fdefault_inline:
- flag_default_inline = value;
- break;
-
- case OPT_felide_constructors:
- flag_elide_constructors = value;
- break;
-
- case OPT_fenforce_eh_specs:
- flag_enforce_eh_specs = value;
+ /* Ignore. */
break;
case OPT_fextended_identifiers:
cpp_opts->extended_identifiers = value;
break;
- case OPT_ffor_scope:
- flag_new_for_scope = value;
- break;
-
- case OPT_fgnu_keywords:
- flag_no_gnu_keywords = !value;
- break;
-
case OPT_fgnu_runtime:
flag_next_runtime = !value;
break;
@@ -800,44 +724,16 @@ c_common_handle_option (size_t scode, const char *arg, int value,
flag_exceptions = value;
break;
- case OPT_fimplement_inlines:
- flag_implement_inlines = value;
- break;
-
- case OPT_fimplicit_inline_templates:
- flag_implicit_inline_templates = value;
- break;
-
- case OPT_fimplicit_templates:
- flag_implicit_templates = value;
- break;
-
- case OPT_flax_vector_conversions:
- flag_lax_vector_conversions = value;
- break;
-
- case OPT_fms_extensions:
- flag_ms_extensions = value;
- break;
-
case OPT_fnext_runtime:
flag_next_runtime = value;
break;
- case OPT_fnil_receivers:
- flag_nil_receivers = value;
- break;
-
- case OPT_fnonansi_builtins:
- flag_no_nonansi_builtin = !value;
- break;
-
case OPT_foperator_names:
cpp_opts->operator_names = value;
break;
case OPT_foptional_diags:
- flag_optional_diags = value;
+ /* Ignore. */
break;
case OPT_fpch_deps:
@@ -857,28 +753,16 @@ c_common_handle_option (size_t scode, const char *arg, int value,
cpp_opts->preprocessed = value;
break;
- case OPT_freplace_objc_classes:
- flag_replace_objc_classes = value;
- break;
-
case OPT_frepo:
flag_use_repository = value;
if (value)
flag_implicit_templates = 0;
break;
- case OPT_frtti:
- flag_rtti = value;
- break;
-
case OPT_fshow_column:
cpp_opts->show_column = value;
break;
- case OPT_fstats:
- flag_detailed_statistics = value;
- break;
-
case OPT_ftabstop_:
/* It is documented that we silently ignore silly values. */
if (value >= 1 && value <= 100)
@@ -903,38 +787,10 @@ c_common_handle_option (size_t scode, const char *arg, int value,
max_tinst_depth = value;
break;
- case OPT_fuse_cxa_atexit:
- flag_use_cxa_atexit = value;
- break;
-
- case OPT_fuse_cxa_get_exception_ptr:
- flag_use_cxa_get_exception_ptr = value;
- break;
-
case OPT_fvisibility_inlines_hidden:
visibility_options.inlines_hidden = value;
break;
- case OPT_fweak:
- flag_weak = value;
- break;
-
- case OPT_fthreadsafe_statics:
- flag_threadsafe_statics = value;
- break;
-
- case OPT_fpretty_templates:
- flag_pretty_templates = value;
- break;
-
- case OPT_fzero_link:
- flag_zero_link = value;
- break;
-
- case OPT_gen_decls:
- flag_gen_declaration = 1;
- break;
-
case OPT_femit_struct_debug_baseonly:
set_struct_debug_option ("base");
break;
@@ -1094,10 +950,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
cpp_opts->traditional = 1;
break;
- case OPT_undef:
- flag_undef = 1;
- break;
-
case OPT_v:
verbose = true;
break;
diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index 01d6428ea6a..5122e1a80ef 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -54,7 +54,7 @@ C ObjC C++ ObjC++ Joined Separate
-D<macro>[=<val>] Define a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1
E
-C ObjC C++ ObjC++ Undocumented
+C ObjC C++ ObjC++ Undocumented Var(flag_preprocess_only)
F
C ObjC C++ ObjC++ Joined Separate
@@ -438,7 +438,7 @@ C++ ObjC++ Var(warn_sign_promo) Warning
Warn when overload promotes from unsigned to signed
Wstrict-null-sentinel
-C++ ObjC++ Warning
+C++ ObjC++ Warning Var(warn_strict_null_sentinel)
Warn about uncasted NULL used as sentinel
Wstrict-prototypes
@@ -526,7 +526,7 @@ C ObjC C++ ObjC++ Joined
; Documented in common.opt. FIXME - what about -dI, -dD, -dN and -dD?
faccess-control
-C++ ObjC++
+C++ ObjC++ Var(flag_access_control) Init(1)
Enforce class member access control semantics
fall-virtual
@@ -537,18 +537,18 @@ C++ ObjC++
Change when template instances are emitted
fasm
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_no_asm, 0)
Recognize the \"asm\" keyword
fbuiltin
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_no_builtin, 0)
Recognize built-in functions
fbuiltin-
C ObjC C++ ObjC++ Joined
fcheck-new
-C++ ObjC++
+C++ ObjC++ Var(flag_check_new)
Check the return value of new
fcond-mismatch
@@ -556,7 +556,7 @@ C ObjC C++ ObjC++
Allow the arguments of the '?' operator to have different types
fconserve-space
-C++ ObjC++
+C++ ObjC++ Var(flag_conserve_space)
Reduce the size of object files
fconstant-string-class=
@@ -569,7 +569,7 @@ C++ ObjC++ Var(flag_deduce_init_list) Init(1)
fdefault-inline
C++ ObjC++
-Inline member functions by default
+Does nothing. Preserved for backward compatibility.
fdirectives-only
C ObjC C++ ObjC++
@@ -580,10 +580,10 @@ C ObjC C++ ObjC++
Permit '$' as an identifier character
felide-constructors
-C++ ObjC++
+C++ ObjC++ Var(flag_elide_constructors) Init(1)
fenforce-eh-specs
-C++ ObjC++
+C++ ObjC++ Var(flag_enforce_eh_specs) Init(1)
Generate code to check exception specifications
fenum-int-equiv
@@ -606,7 +606,7 @@ fexternal-templates
C++ ObjC++
ffor-scope
-C++ ObjC++
+C++ ObjC++ Var(flag_new_for_scope) Init(1)
Scope of for-init-statement variables is local to the loop
ffreestanding
@@ -614,7 +614,7 @@ C ObjC C++ ObjC++
Do not assume that standard C libraries and \"main\" exist
fgnu-keywords
-C++ ObjC++
+C++ ObjC++ Var(flag_no_gnu_keywords, 0)
Recognize GNU-defined keywords
fgnu-runtime
@@ -643,15 +643,15 @@ C++ ObjC++
Enable support for huge objects
fimplement-inlines
-C++ ObjC++
+C++ ObjC++ Var(flag_implement_inlines) Init(1)
Export functions even if they can be inlined
fimplicit-inline-templates
-C++ ObjC++
+C++ ObjC++ Var(flag_implicit_inline_templates) Init(1)
Emit implicit instantiations of inline templates
fimplicit-templates
-C++ ObjC++
+C++ ObjC++ Var(flag_implicit_templates) Init(1)
Emit implicit instantiations of templates
ffriend-injection
@@ -662,11 +662,11 @@ flabels-ok
C++ ObjC++
flax-vector-conversions
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_lax_vector_conversions)
Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types.
fms-extensions
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_ms_extensions)
Don't warn about uses of Microsoft extensions
fname-mangling-version-
@@ -680,11 +680,11 @@ ObjC ObjC++
Generate code for NeXT (Apple Mac OS X) runtime environment
fnil-receivers
-ObjC ObjC++
+ObjC ObjC++ Var(flag_nil_receivers) Init(1)
Assume that receivers of Objective-C messages may be nil
fnonansi-builtins
-C++ ObjC++
+C++ ObjC++ Var(flag_no_nonansi_builtin, 0)
fnonnull-objects
C++ ObjC++
@@ -728,7 +728,7 @@ Recognize C++ keywords like \"compl\" and \"xor\"
foptional-diags
C++ ObjC++
-Enable optional diagnostics
+Does nothing. Preserved for backward compatibility.
fpch-deps
C ObjC C++ ObjC++
@@ -746,11 +746,11 @@ C ObjC C++ ObjC++
Treat the input file as already preprocessed
fpretty-templates
-C++ ObjC++
+C++ ObjC++ Var(flag_pretty_templates) Init(1)
-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments
freplace-objc-classes
-ObjC ObjC++
+ObjC ObjC++ Var(flag_replace_objc_classes)
Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime
frepo
@@ -758,34 +758,34 @@ C++ ObjC++
Enable automatic template instantiation
frtti
-C++ ObjC++ Optimization
+C++ ObjC++ Optimization Var(flag_rtti) Init(1)
Generate run time type descriptor information
fshort-double
-C ObjC C++ ObjC++ Optimization
+C ObjC C++ ObjC++ Optimization Var(flag_short_double)
Use the same size for double as for float
fshort-enums
-C ObjC C++ ObjC++ Optimization
+C ObjC C++ ObjC++ Optimization Var(flag_short_enums)
Use the narrowest integer type possible for enumeration types
fshort-wchar
-C ObjC C++ ObjC++ Optimization
+C ObjC C++ ObjC++ Optimization Var(flag_short_wchar)
Force the underlying type for \"wchar_t\" to be \"unsigned short\"
fsigned-bitfields
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_signed_bitfields) Init(1)
When \"signed\" or \"unsigned\" is not given make the bitfield signed
fsigned-char
-C ObjC C++ ObjC++ LTO
+C ObjC C++ ObjC++ LTO Var(flag_signed_char)
Make \"char\" signed by default
fsquangle
C++ ObjC++
fstats
-C++ ObjC++
+C++ ObjC++ Var(flag_detailed_statistics)
Display statistics accumulated during compilation
fstrict-enums
@@ -810,23 +810,23 @@ fthis-is-variable
C++ ObjC++
fthreadsafe-statics
-C++ ObjC++ Optimization
+C++ ObjC++ Optimization Var(flag_threadsafe_statics) Init(1)
-fno-threadsafe-statics Do not generate thread-safe code for initializing local statics
funsigned-bitfields
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_signed_bitfields, 0) VarExists
When \"signed\" or \"unsigned\" is not given make the bitfield unsigned
funsigned-char
-C ObjC C++ ObjC++ LTO
+C ObjC C++ ObjC++ LTO Var(flag_signed_char, 0) VarExists
Make \"char\" unsigned by default
fuse-cxa-atexit
-C++ ObjC++
+C++ ObjC++ Var(flag_use_cxa_atexit) Init(DEFAULT_USE_CXA_ATEXIT)
Use __cxa_atexit to register destructors
fuse-cxa-get-exception-ptr
-C++ ObjC++
+C++ ObjC++ Var(flag_use_cxa_get_exception_ptr) Init(2)
Use __cxa_get_exception_ptr in exception handling
fvisibility-inlines-hidden
@@ -846,7 +846,7 @@ C++ ObjC++
Implement vtables using thunks
fweak
-C++ ObjC++
+C++ ObjC++ Var(flag_weak) Init(1)
Emit common-like symbols as weak symbols
fwide-exec-charset=
@@ -854,7 +854,7 @@ C ObjC C++ ObjC++ Joined RejectNegative
-fwide-exec-charset=<cset> Convert all wide strings and character constants to character set <cset>
fworking-directory
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_working_directory) Init(-1)
Generate a #line directive pointing at the current working directory
fxref
@@ -862,11 +862,11 @@ C++ ObjC++
Emit cross referencing information
fzero-link
-ObjC ObjC++
+ObjC ObjC++ Var(flag_zero_link)
Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode
gen-decls
-ObjC ObjC++
+ObjC ObjC++ Var(flag_gen_declaration)
Dump declarations to a .decl file
femit-struct-debug-baseonly
@@ -1046,7 +1046,7 @@ C ObjC C++ ObjC++
-trigraphs Support ISO C trigraphs
undef
-C ObjC C++ ObjC++
+C ObjC C++ ObjC++ Var(flag_undef)
Do not predefine system-specific and GCC-specific macros
v