public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: "Martin Liška" <mliska@suse.cz>
To: gcc-patches@gcc.gnu.org
Cc: Jakub Jelinek <jakub@redhat.com>, jsm28@gcc.gnu.org
Subject: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
Date: Mon, 09 Sep 2019 13:04:00 -0000	[thread overview]
Message-ID: <6409f73e-9a84-addc-3360-56b9ef8a8b54@suse.cz> (raw)

[-- Attachment #1: Type: text/plain, Size: 2001 bytes --]

Hi.

I'm suggesting to rename Deprecated to IgnoreWarn as deprecated
means that an option is still working, but marked as obsolete.
We use the name for options that removed (no longer supported),
but still supported for backward compatibility.

Patch can bootstrap on x86_64-linux-gnu and survives regression tests.

Ready to be installed?
Thanks,
Martin

gcc/ChangeLog:

2019-09-09  Martin Liska  <mliska@suse.cz>

	* common.opt: Use newly added IgnoreWarn.
	* config/aarch64/aarch64.opt: Likewise.
	* config/arm/arm.opt: Likewise.
	* config/i386/i386.opt: Likewise.
	* config/ia64/ia64.opt: Likewise.
	* config/rs6000/rs6000.opt: Likewise.
	* doc/options.texi: Document IgnoreWarn properly.
	* dwarf2out.c (gen_producer_string): Handle renamed
	OPT_SPECIAL_ignore_warn.
	* lto-opts.c (lto_write_options): Likewise.
	* lto-wrapper.c (merge_and_complain): Likewise.
	* opts-common.c (decode_cmdline_option): Likewise.
	(prune_options): Likewise.
	(read_cmdline_option): Likewise.
	(control_warning_option): Likewise.
	* opts.c (print_filtered_help): Likewise.
	* optc-gen.awk: Parse for IgnoreWarn and make usage
	of Deprecated an error.
	* opth-gen.awk: Generate new OPT_SPECIAL_ignore_warn.

gcc/c-family/ChangeLog:

2019-09-09  Martin Liska  <mliska@suse.cz>

	* c.opt: Use newly added IgnoreWarn.
---
 gcc/c-family/c.opt             | 92 +++++++++++++++++-----------------
 gcc/common.opt                 |  8 +--
 gcc/config/aarch64/aarch64.opt |  2 +-
 gcc/config/arm/arm.opt         |  2 +-
 gcc/config/i386/i386.opt       |  9 ++--
 gcc/config/ia64/ia64.opt       |  4 +-
 gcc/config/rs6000/rs6000.opt   |  6 +--
 gcc/doc/options.texi           |  6 +--
 gcc/dwarf2out.c                |  2 +-
 gcc/lto-opts.c                 |  2 +-
 gcc/lto-wrapper.c              |  2 +-
 gcc/optc-gen.awk               | 10 ++--
 gcc/opth-gen.awk               |  2 +-
 gcc/opts-common.c              | 10 ++--
 gcc/opts.c                     |  2 +-
 15 files changed, 79 insertions(+), 80 deletions(-)



[-- Attachment #2: 0001-Rename-Deprecated-to-IgnoreWarn-in-.opt-files.patch --]
[-- Type: text/x-patch, Size: 19043 bytes --]

diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index c5804470d47..3c26a6b2e9e 100644
--- a/gcc/c-family/c.opt
+++ b/gcc/c-family/c.opt
@@ -428,7 +428,7 @@ C ObjC C++ ObjC++ Var(warn_char_subscripts) Warning LangEnabledBy(C ObjC C++ Obj
 Warn about subscripts whose type is \"char\".
 
 Wchkp
-C ObjC C++ ObjC++ Warning Deprecated
+C ObjC C++ ObjC++ Warning IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 Wclobbered
@@ -864,7 +864,7 @@ C ObjC Var(warn_missing_prototypes) Warning
 Warn about global functions without prototypes.
 
 Wmudflap
-C ObjC C++ ObjC++ Deprecated
+C ObjC C++ ObjC++ IgnoreWarn
 
 Wmultichar
 C ObjC C++ ObjC++ CPP(warn_multichar) CppReason(CPP_W_MULTICHAR) Var(cpp_warn_multichar) Init(0) Warning
@@ -1302,14 +1302,14 @@ C++ ObjC++ Joined RejectNegative Var(aligned_new_threshold) UInteger Init(-1)
 -faligned-new=<N> Use C++17 over-aligned type allocation for alignments greater than N.
 
 fall-virtual
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fallow-parameterless-variadic-functions
 C ObjC Var(flag_allow_parameterless_variadic_functions)
 Allow variadic functions without named parameter.
 
 falt-external-templates
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 No longer supported.
 
 fasm
@@ -1337,86 +1337,86 @@ Enable the char8_t fundamental type and use it as the type for UTF-8 string
 and character literals.
 
 fcheck-pointer-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-check-incomplete-type
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-zero-input-bounds-for-main
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-first-field-has-own-bounds
-C ObjC C++ ObjC++ LTO Deprecated RejectNegative
+C ObjC C++ ObjC++ LTO IgnoreWarn RejectNegative
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-narrow-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-narrow-to-innermost-array
-C ObjC C++ ObjC++ LTO Deprecated RejectNegative
+C ObjC C++ ObjC++ LTO IgnoreWarn RejectNegative
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-flexible-struct-trailing-arrays
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-optimize
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 
 fchkp-use-fast-string-functions
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-use-nochk-string-functions
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-use-static-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-use-static-const-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-treat-zero-dynamic-size-as-infinite
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-check-read
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-check-write
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-store-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-instrument-calls
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-instrument-marked-only
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-use-wrappers
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 static-libmpx
-Driver Deprecated
+Driver IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 static-libmpxwrappers
-Driver Deprecated
+Driver IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 fcilkplus
@@ -1507,7 +1507,7 @@ C++ ObjC++ Var(flag_enforce_eh_specs) Init(1)
 Generate code to check exception specifications.
 
 fenum-int-equiv
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fexec-charset=
 C ObjC C++ ObjC++ Joined RejectNegative
@@ -1526,10 +1526,10 @@ C++ ObjC++ Var(flag_extern_tls_init) Init(-1)
 Support dynamic initialization of thread-local variables in a different translation unit.
 
 fexternal-templates
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 ffor-scope
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 ffreestanding
 C ObjC C++ ObjC++
@@ -1548,20 +1548,20 @@ C ObjC Var(flag_gnu89_inline) Init(-1)
 Use traditional GNU semantics for inline functions.
 
 fguiding-decls
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fhandle-exceptions
 C++ ObjC++ Optimization Alias(fexceptions) Warn({%<-fhandle-exceptions%> has been renamed %<-fexceptions%> (and is now on by default)})
 
 fhonor-std
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fhosted
 C ObjC
 Assume normal C execution environment.
 
 fhuge-objects
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 No longer supported.
 
 fimplement-inlines
@@ -1581,14 +1581,14 @@ C++ ObjC++ Var(flag_new_inheriting_ctors) Init(1)
 Implement C++17 inheriting constructor semantics.
 
 ffriend-injection
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fkeep-inline-dllexport
 C C++ ObjC ObjC++ Var(flag_keep_inline_dllexport) Init(1) Report Condition(TARGET_DLLIMPORT_DECL_ATTRIBUTES)
 Don't emit dllexported inline functions unless needed.
 
 flabels-ok
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 flax-vector-conversions
 C ObjC C++ ObjC++ Var(flag_lax_vector_conversions)
@@ -1603,19 +1603,19 @@ C ObjC C++ ObjC++ Var(flag_ms_extensions)
 Don't warn about uses of Microsoft extensions.
 
 fmudflap
-C ObjC C++ ObjC++ Deprecated
+C ObjC C++ ObjC++ IgnoreWarn
 
 fmudflapth
-C ObjC C++ ObjC++ Deprecated
+C ObjC C++ ObjC++ IgnoreWarn
 
 fmudflapir
-C ObjC C++ ObjC++ Deprecated
+C ObjC C++ ObjC++ IgnoreWarn
 
 fname-mangling-version-
-C++ ObjC++ Joined Deprecated
+C++ ObjC++ Joined IgnoreWarn
 
 fnew-abi
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fnew-ttp-matching
 C++ ObjC++ Var(flag_new_ttp)
@@ -1656,7 +1656,7 @@ fnonansi-builtins
 C++ ObjC++ Var(flag_no_nonansi_builtin, 0)
 
 fnonnull-objects
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fnothrow-opt
 C++ ObjC++ Optimization Var(flag_nothrow_opt)
@@ -1763,7 +1763,7 @@ ObjC ObjC++ LTO Var(flag_replace_objc_classes)
 Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime.
 
 frepo
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 Removed in GCC 10.  This switch has no effect.
 
 frtti
@@ -1791,7 +1791,7 @@ C++ ObjC++ Var(flag_sized_deallocation) Init(-1)
 Enable C++14 sized deallocation support.
 
 fsquangle
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fsso-struct=
 C ObjC Joined RejectNegative Enum(sso_struct) Var(default_sso) Init(SSO_NATIVE)
@@ -1818,7 +1818,7 @@ C++ ObjC++ Optimization Var(flag_strict_enums)
 Assume that values of enumeration type are always within the minimum range of that type.
 
 fstrict-prototype
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fstrong-eval-order
 C++ ObjC++ Common Alias(fstrong-eval-order=, all, none)
@@ -1858,7 +1858,7 @@ C++ ObjC++ Joined RejectNegative UInteger
 -ftemplate-depth=<number>	Specify maximum template instantiation depth.
 
 fthis-is-variable
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 
 fthreadsafe-statics
 C++ ObjC++ Optimization Var(flag_threadsafe_statics) Init(1)
@@ -1889,11 +1889,11 @@ C++ ObjC++ Var(flag_visibility_ms_compat)
 Changes visibility to match Microsoft Visual Studio by default.
 
 fvtable-gc
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 No longer supported.
 
 fvtable-thunks
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn 
 No longer supported.
 
 fweak
@@ -1909,7 +1909,7 @@ C ObjC C++ ObjC++ Var(flag_working_directory) Init(-1)
 Generate a #line directive pointing at the current working directory.
 
 fxref
-C++ ObjC++ Deprecated
+C++ ObjC++ IgnoreWarn
 No longer supported.
 
 fzero-link
diff --git a/gcc/common.opt b/gcc/common.opt
index f2214ed93ad..3913c4cd07a 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -2992,19 +2992,19 @@ Common Driver Var(dwarf2out_as_locview_support) Init(2)
 Assume assembler support for view in (DWARF2+) .loc directives.
 
 gcoff
-Common Driver Deprecated
+Common Driver IgnoreWarn
 Does nothing.  Preserved for backward compatibility.
 
 gcoff1
-Common Driver Deprecated
+Common Driver IgnoreWarn
 Does nothing.  Preserved for backward compatibility.
 
 gcoff2
-Common Driver Deprecated
+Common Driver IgnoreWarn
 Does nothing.  Preserved for backward compatibility.
 
 gcoff3
-Common Driver Deprecated
+Common Driver IgnoreWarn
 Does nothing.  Preserved for backward compatibility.
 
 gcolumn-info
diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
index 2c8b22c3b09..c968a98e99c 100644
--- a/gcc/config/aarch64/aarch64.opt
+++ b/gcc/config/aarch64/aarch64.opt
@@ -157,7 +157,7 @@ Target RejectNegative Joined Var(aarch64_branch_protection_string) Save
 Use branch-protection features.
 
 msign-return-address=
-Target Deprecated RejectNegative Joined Enum(aarch64_ra_sign_scope_t) Var(aarch64_ra_sign_scope) Init(AARCH64_FUNCTION_NONE) Save
+Target IgnoreWarn RejectNegative Joined Enum(aarch64_ra_sign_scope_t) Var(aarch64_ra_sign_scope) Init(AARCH64_FUNCTION_NONE) Save
 Select return address signing scope.
 
 Enum
diff --git a/gcc/config/arm/arm.opt b/gcc/config/arm/arm.opt
index 5ecc5e5c91c..35c557f9d02 100644
--- a/gcc/config/arm/arm.opt
+++ b/gcc/config/arm/arm.opt
@@ -276,7 +276,7 @@ Target Report Var(unaligned_access) Init(2) Save
 Enable unaligned word and halfword accesses to packed data.
 
 mneon-for-64bits
-Target Deprecated
+Target IgnoreWarn
 This option is deprecated and has no effect.
 
 mslow-flash-data
diff --git a/gcc/config/i386/i386.opt b/gcc/config/i386/i386.opt
index 5d47212ae72..544fcbae773 100644
--- a/gcc/config/i386/i386.opt
+++ b/gcc/config/i386/i386.opt
@@ -377,7 +377,6 @@ Inline memset/memcpy string operations, but perform inline version only for smal
 
 mintel-syntax
 Target Undocumented Alias(masm=, intel, att) Warn(%<-mintel-syntax%> and %<-mno-intel-syntax%> are deprecated; use %<-masm=intel%> and %<-masm=att%> instead)
-;; Deprecated
 
 mms-bitfields
 Target Report Mask(MS_BITFIELD_LAYOUT) Save
@@ -850,8 +849,7 @@ Target Report Mask(ISA_CLWB) Var(ix86_isa_flags) Save
 Support CLWB instruction.
 
 mpcommit
-Target Deprecated
-;; Deprecated
+Target IgnoreWarn
 
 mfxsr
 Target Report Mask(ISA_FXSR) Var(ix86_isa_flags) Save
@@ -967,7 +965,7 @@ Target Report Mask(ISA_RTM) Var(ix86_isa_flags) Save
 Support RTM built-in functions and code generation.
 
 mmpx
-Target Deprecated
+Target IgnoreWarn
 Removed in GCC 9.  This switch has no effect.
 
 mmwaitx
@@ -1015,8 +1013,7 @@ Target RejectNegative Joined Integer Var(ix86_stack_protector_guard_symbol_str)
 Use the given symbol for addressing the stack-protector guard.
 
 mmitigate-rop
-Target Deprecated
-;; Deprecated
+Target IgnoreWarn
 
 mgeneral-regs-only
 Target Report RejectNegative Mask(GENERAL_REGS_ONLY) Var(ix86_target_flags) Save
diff --git a/gcc/config/ia64/ia64.opt b/gcc/config/ia64/ia64.opt
index 9d2bbe10ceb..fc63d562694 100644
--- a/gcc/config/ia64/ia64.opt
+++ b/gcc/config/ia64/ia64.opt
@@ -164,10 +164,10 @@ Target Report Var(mflag_sched_spec_control_ldc) Init(0)
 Use simple data speculation check for control speculation.
 
 msched-prefer-non-data-spec-insns
-Target Deprecated
+Target IgnoreWarn
 
 msched-prefer-non-control-spec-insns
-Target Deprecated
+Target IgnoreWarn
 
 msched-count-spec-in-critical-path
 Target Report Var(mflag_sched_count_spec_in_critical_path) Init(0)
diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt
index 1b69507cfa8..0a106bde4b4 100644
--- a/gcc/config/rs6000/rs6000.opt
+++ b/gcc/config/rs6000/rs6000.opt
@@ -149,7 +149,7 @@ mno-mfpgpr
 Target RejectNegative Undocumented Ignore
 
 mmfpgpr
-Target RejectNegative Undocumented Deprecated
+Target RejectNegative Undocumented IgnoreWarn
 
 maltivec
 Target Report Mask(ALTIVEC) Var(rs6000_isa_flags)
@@ -180,7 +180,7 @@ mno-string
 Target RejectNegative Undocumented Ignore
 
 mstring
-Target RejectNegative Undocumented Deprecated
+Target RejectNegative Undocumented IgnoreWarn
 
 msoft-float
 Target Report RejectNegative Mask(SOFT_FLOAT) Var(rs6000_isa_flags)
@@ -479,7 +479,7 @@ Target Report Mask(CRYPTO) Var(rs6000_isa_flags)
 Use ISA 2.07 Category:Vector.AES and Category:Vector.SHA2 instructions.
 
 mdirect-move
-Target Undocumented Mask(DIRECT_MOVE) Var(rs6000_isa_flags) Deprecated
+Target Undocumented Mask(DIRECT_MOVE) Var(rs6000_isa_flags) IgnoreWarn
 
 mhtm
 Target Report Mask(HTM) Var(rs6000_isa_flags)
diff --git a/gcc/doc/options.texi b/gcc/doc/options.texi
index 1c83d241488..e52981d96a0 100644
--- a/gcc/doc/options.texi
+++ b/gcc/doc/options.texi
@@ -314,9 +314,9 @@ The state of this option should be stored in variable @var{var}
 (actually a macro for @code{global_options.x_@var{var}}).
 The way that the state is stored depends on the type of option:
 
-@item Deprecated
-The option is deprecated and every usage of such option will
-result in a warning.
+@item IgnoreWarn
+The option is removed and every usage of such option will
+result in a warning.  We use it option backward compatibility.
 
 @item Var(@var{var}, @var{set})
 The option controls an integer variable @var{var} and is active when
diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c
index aa7fd7eb465..24231eca10c 100644
--- a/gcc/dwarf2out.c
+++ b/gcc/dwarf2out.c
@@ -24432,7 +24432,7 @@ gen_producer_string (void)
       case OPT_U:
       case OPT_SPECIAL_unknown:
       case OPT_SPECIAL_ignore:
-      case OPT_SPECIAL_deprecated:
+      case OPT_SPECIAL_ignore_warn:
       case OPT_SPECIAL_program_name:
       case OPT_SPECIAL_input_file:
       case OPT_grecord_gcc_switches:
diff --git a/gcc/lto-opts.c b/gcc/lto-opts.c
index 5e59e9327e7..7b0f8472b43 100644
--- a/gcc/lto-opts.c
+++ b/gcc/lto-opts.c
@@ -122,7 +122,7 @@ lto_write_options (void)
 	case OPT_dumpbase:
 	case OPT_SPECIAL_unknown:
 	case OPT_SPECIAL_ignore:
-	case OPT_SPECIAL_deprecated:
+	case OPT_SPECIAL_ignore_warn:
 	case OPT_SPECIAL_program_name:
 	case OPT_SPECIAL_input_file:
 	case OPT_dumpdir:
diff --git a/gcc/lto-wrapper.c b/gcc/lto-wrapper.c
index 75ed289f3f2..d454a5ed33d 100644
--- a/gcc/lto-wrapper.c
+++ b/gcc/lto-wrapper.c
@@ -247,7 +247,7 @@ merge_and_complain (struct cl_decoded_option **decoded_options,
 	{
 	case OPT_SPECIAL_unknown:
 	case OPT_SPECIAL_ignore:
-	case OPT_SPECIAL_deprecated:
+	case OPT_SPECIAL_ignore_warn:
 	case OPT_SPECIAL_program_name:
 	case OPT_SPECIAL_input_file:
 	  break;
diff --git a/gcc/optc-gen.awk b/gcc/optc-gen.awk
index 85f68a6ba5f..939b19588e8 100644
--- a/gcc/optc-gen.awk
+++ b/gcc/optc-gen.awk
@@ -332,12 +332,14 @@ for (i = 0; i < n_opts; i++) {
         if (flag_set_p("Report", flags[i]))
 				  print "#error Ignored option with Report"
       }
-    else if (flag_set_p("Deprecated", flags[i])) {
-			  alias_data = "NULL, NULL, OPT_SPECIAL_deprecated"
+    else if (flag_set_p("Deprecated", flags[i]))
+        print "#error Deprecated was replaced with IgnoreWarn"
+    else if (flag_set_p("IgnoreWarn", flags[i])) {
+			  alias_data = "NULL, NULL, OPT_SPECIAL_ignore_warn"
         if (warn_message != "NULL")
-				  print "#error Deprecated option with Warn"
+				  print "#error IgnoreWarn option with Warn"
         if (flag_set_p("Report", flags[i]))
-				  print "#error Deprecated option with Report"
+				  print "#error IgnoreWarn option with Report"
       }
 		else
 			alias_data = "NULL, NULL, N_OPTS"
diff --git a/gcc/opth-gen.awk b/gcc/opth-gen.awk
index 297456f62e7..5485201e7e9 100644
--- a/gcc/opth-gen.awk
+++ b/gcc/opth-gen.awk
@@ -494,7 +494,7 @@ for (i = 0; i < n_opts; i++) {
 print "  N_OPTS,"
 print "  OPT_SPECIAL_unknown,"
 print "  OPT_SPECIAL_ignore,"
-print "  OPT_SPECIAL_deprecated,"
+print "  OPT_SPECIAL_ignore_warn,"
 print "  OPT_SPECIAL_program_name,"
 print "  OPT_SPECIAL_input_file"
 print "};"
diff --git a/gcc/opts-common.c b/gcc/opts-common.c
index 200951b5010..bf916884469 100644
--- a/gcc/opts-common.c
+++ b/gcc/opts-common.c
@@ -667,7 +667,7 @@ decode_cmdline_option (const char **argv, unsigned int lang_mask,
       size_t new_opt_index = option->alias_target;
 
       if (new_opt_index == OPT_SPECIAL_ignore
-	  || new_opt_index == OPT_SPECIAL_deprecated)
+	  || new_opt_index == OPT_SPECIAL_ignore_warn)
 	{
 	  gcc_assert (option->alias_arg == NULL);
 	  gcc_assert (option->neg_alias_arg == NULL);
@@ -840,7 +840,7 @@ decode_cmdline_option (const char **argv, unsigned int lang_mask,
 	decoded->canonical_option[i] = NULL;
     }
   if (opt_index != OPT_SPECIAL_unknown && opt_index != OPT_SPECIAL_ignore
-      && opt_index != OPT_SPECIAL_deprecated)
+      && opt_index != OPT_SPECIAL_ignore_warn)
     {
       generate_canonical_option (opt_index, arg, value, decoded);
       if (separate_args > 1)
@@ -1018,7 +1018,7 @@ prune_options (struct cl_decoded_option **decoded_options,
 	{
 	case OPT_SPECIAL_unknown:
 	case OPT_SPECIAL_ignore:
-	case OPT_SPECIAL_deprecated:
+	case OPT_SPECIAL_ignore_warn:
 	case OPT_SPECIAL_program_name:
 	case OPT_SPECIAL_input_file:
 	  goto keep;
@@ -1348,7 +1348,7 @@ read_cmdline_option (struct gcc_options *opts,
   if (decoded->opt_index == OPT_SPECIAL_ignore)
     return;
 
-  if (decoded->opt_index == OPT_SPECIAL_deprecated)
+  if (decoded->opt_index == OPT_SPECIAL_ignore_warn)
     {
       /* Warn only about positive ignored options.  */
       if (decoded->value)
@@ -1653,7 +1653,7 @@ control_warning_option (unsigned int opt_index, int kind, const char *arg,
 	arg = cl_options[opt_index].alias_arg;
       opt_index = cl_options[opt_index].alias_target;
     }
-  if (opt_index == OPT_SPECIAL_ignore || opt_index == OPT_SPECIAL_deprecated)
+  if (opt_index == OPT_SPECIAL_ignore || opt_index == OPT_SPECIAL_ignore_warn)
     return;
   if (dc)
     diagnostic_classify_diagnostic (dc, opt_index, (diagnostic_t) kind, loc);
diff --git a/gcc/opts.c b/gcc/opts.c
index 07f701c26a5..eb5b5b59712 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -1541,7 +1541,7 @@ print_filtered_help (unsigned int include_flags,
 	  if (print_state)
 	    {
 	      if (option->alias_target < N_OPTS
-		  && option->alias_target != OPT_SPECIAL_deprecated
+		  && option->alias_target != OPT_SPECIAL_ignore_warn
 		  && option->alias_target != OPT_SPECIAL_ignore
 		  && option->alias_target != OPT_SPECIAL_input_file
 		  && option->alias_target != OPT_SPECIAL_program_name


             reply	other threads:[~2019-09-09 13:04 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-09 13:04 Martin Liška [this message]
2019-09-09 13:56 ` Segher Boessenkool
2019-09-09 14:04   ` Jakub Jelinek
2019-09-09 14:08     ` Segher Boessenkool
2019-09-09 14:16       ` Jakub Jelinek
2019-09-09 21:15         ` Joseph Myers
2019-09-10 16:14           ` Martin Liška
2019-09-10 16:18             ` Jakub Jelinek
2019-09-10 16:46               ` Richard Sandiford
2019-09-10 16:48                 ` Jakub Jelinek
2019-09-11  7:21                   ` Martin Liška
2019-09-10 17:19                 ` Segher Boessenkool

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=6409f73e-9a84-addc-3360-56b9ef8a8b54@suse.cz \
    --to=mliska@suse.cz \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=jakub@redhat.com \
    --cc=jsm28@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).