public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
@ 2019-09-09 13:04 Martin Liška
  2019-09-09 13:56 ` Segher Boessenkool
  0 siblings, 1 reply; 12+ messages in thread
From: Martin Liška @ 2019-09-09 13:04 UTC (permalink / raw)
  To: gcc-patches; +Cc: Jakub Jelinek, jsm28

[-- 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


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-09 13:04 [PATCH] Rename Deprecated to IgnoreWarn in *.opt files Martin Liška
@ 2019-09-09 13:56 ` Segher Boessenkool
  2019-09-09 14:04   ` Jakub Jelinek
  0 siblings, 1 reply; 12+ messages in thread
From: Segher Boessenkool @ 2019-09-09 13:56 UTC (permalink / raw)
  To: Martin Liška; +Cc: gcc-patches, Jakub Jelinek, jsm28

Hi Martin,

On Mon, Sep 09, 2019 at 03:04:20PM +0200, Martin Liška wrote:
> I'm suggesting to rename Deprecated to IgnoreWarn

That is an even worse name IMO.

Just call it Removed or Deleted or something like that?  Something that
says what it _is_, not something that is an amalgamate of how we should
handle it.


Segher

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-09 13:56 ` Segher Boessenkool
@ 2019-09-09 14:04   ` Jakub Jelinek
  2019-09-09 14:08     ` Segher Boessenkool
  0 siblings, 1 reply; 12+ messages in thread
From: Jakub Jelinek @ 2019-09-09 14:04 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: Martin Liška, gcc-patches, jsm28

On Mon, Sep 09, 2019 at 08:56:17AM -0500, Segher Boessenkool wrote:
> Hi Martin,
> 
> On Mon, Sep 09, 2019 at 03:04:20PM +0200, Martin Liška wrote:
> > I'm suggesting to rename Deprecated to IgnoreWarn
> 
> That is an even worse name IMO.
> 
> Just call it Removed or Deleted or something like that?  Something that
> says what it _is_, not something that is an amalgamate of how we should
> handle it.

Well, the current Deprecated is essentially Ignore Warn(switch %qs is no longer supported)
so the name was meant to say that it is like Ignore with a warning,
the option is ignored after warning about it.
Though, the documentation needs to be clear, it isn't the option that was
removed, just the feature behind the option.

	Jakub

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-09 14:04   ` Jakub Jelinek
@ 2019-09-09 14:08     ` Segher Boessenkool
  2019-09-09 14:16       ` Jakub Jelinek
  0 siblings, 1 reply; 12+ messages in thread
From: Segher Boessenkool @ 2019-09-09 14:08 UTC (permalink / raw)
  To: Jakub Jelinek; +Cc: Martin Liška, gcc-patches, jsm28

On Mon, Sep 09, 2019 at 04:04:01PM +0200, Jakub Jelinek wrote:
> On Mon, Sep 09, 2019 at 08:56:17AM -0500, Segher Boessenkool wrote:
> > Hi Martin,
> > 
> > On Mon, Sep 09, 2019 at 03:04:20PM +0200, Martin Liška wrote:
> > > I'm suggesting to rename Deprecated to IgnoreWarn
> > 
> > That is an even worse name IMO.
> > 
> > Just call it Removed or Deleted or something like that?  Something that
> > says what it _is_, not something that is an amalgamate of how we should
> > handle it.
> 
> Well, the current Deprecated is essentially Ignore Warn(switch %qs is no longer supported)
> so the name was meant to say that it is like Ignore with a warning,
> the option is ignored after warning about it.
> Though, the documentation needs to be clear, it isn't the option that was
> removed, just the feature behind the option.

"IgnoreWarn" reads as "ignore the warning".

If we want it named as two things, can we just make it two things?
"Ignore WarnDeleted" or something.  Which also says what it is warning
about.


Segher

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-09 14:08     ` Segher Boessenkool
@ 2019-09-09 14:16       ` Jakub Jelinek
  2019-09-09 21:15         ` Joseph Myers
  0 siblings, 1 reply; 12+ messages in thread
From: Jakub Jelinek @ 2019-09-09 14:16 UTC (permalink / raw)
  To: Segher Boessenkool; +Cc: Martin Liška, gcc-patches, jsm28

On Mon, Sep 09, 2019 at 09:08:43AM -0500, Segher Boessenkool wrote:
> On Mon, Sep 09, 2019 at 04:04:01PM +0200, Jakub Jelinek wrote:
> > On Mon, Sep 09, 2019 at 08:56:17AM -0500, Segher Boessenkool wrote:
> > > Hi Martin,
> > > 
> > > On Mon, Sep 09, 2019 at 03:04:20PM +0200, Martin Liška wrote:
> > > > I'm suggesting to rename Deprecated to IgnoreWarn
> > > 
> > > That is an even worse name IMO.
> > > 
> > > Just call it Removed or Deleted or something like that?  Something that
> > > says what it _is_, not something that is an amalgamate of how we should
> > > handle it.
> > 
> > Well, the current Deprecated is essentially Ignore Warn(switch %qs is no longer supported)
> > so the name was meant to say that it is like Ignore with a warning,
> > the option is ignored after warning about it.
> > Though, the documentation needs to be clear, it isn't the option that was
> > removed, just the feature behind the option.
> 
> "IgnoreWarn" reads as "ignore the warning".
> 
> If we want it named as two things, can we just make it two things?
> "Ignore WarnDeleted" or something.  Which also says what it is warning
> about.

Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
decides.

	Jakub

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-09 14:16       ` Jakub Jelinek
@ 2019-09-09 21:15         ` Joseph Myers
  2019-09-10 16:14           ` Martin Liška
  0 siblings, 1 reply; 12+ messages in thread
From: Joseph Myers @ 2019-09-09 21:15 UTC (permalink / raw)
  To: Jakub Jelinek; +Cc: Segher Boessenkool, Martin Liška, gcc-patches

On Mon, 9 Sep 2019, Jakub Jelinek wrote:

> > "IgnoreWarn" reads as "ignore the warning".
> > 
> > If we want it named as two things, can we just make it two things?
> > "Ignore WarnDeleted" or something.  Which also says what it is warning
> > about.
> 
> Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
> decides.

I prefer WarnRemoved.

-- 
Joseph S. Myers
joseph@codesourcery.com

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-09 21:15         ` Joseph Myers
@ 2019-09-10 16:14           ` Martin Liška
  2019-09-10 16:18             ` Jakub Jelinek
  0 siblings, 1 reply; 12+ messages in thread
From: Martin Liška @ 2019-09-10 16:14 UTC (permalink / raw)
  To: Joseph Myers, Jakub Jelinek; +Cc: Segher Boessenkool, gcc-patches

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

On 9/9/19 11:14 PM, Joseph Myers wrote:
> On Mon, 9 Sep 2019, Jakub Jelinek wrote:
> 
>>> "IgnoreWarn" reads as "ignore the warning".
>>>
>>> If we want it named as two things, can we just make it two things?
>>> "Ignore WarnDeleted" or something.  Which also says what it is warning
>>> about.
>>
>> Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
>> decides.
> 
> I prefer WarnRemoved.
> 

Works for me. I'm going to install the tested patch.

Martin

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

From 288547e039eb18f2059f58495ae5ca6b9df01feb Mon Sep 17 00:00:00 2001
From: Martin Liska <mliska@suse.cz>
Date: Mon, 9 Sep 2019 14:16:18 +0200
Subject: [PATCH] Rename Deprecated to WarnRemoved in *.opt files.

gcc/ChangeLog:

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

	* common.opt: Use newly added WarnRemoved.
	* 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 WarnRemoved properly.
	* dwarf2out.c (gen_producer_string): Handle renamed
	OPT_SPECIAL_warn_removed.
	* 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 WarnRemoved and make usage
	of Deprecated an error.
	* opth-gen.awk: Generate new OPT_SPECIAL_warn_removed.

gcc/c-family/ChangeLog:

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

	* c.opt: Use newly added WarnRemoved.
---
 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(-)

diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt
index c5804470d47..88bbe2e2085 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 WarnRemoved
 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++ WarnRemoved
 
 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++ WarnRemoved
 
 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++ WarnRemoved
 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 WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-check-incomplete-type
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 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 WarnRemoved
 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 WarnRemoved RejectNegative
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-narrow-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 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 WarnRemoved 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 WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-optimize
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 
 fchkp-use-fast-string-functions
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 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 WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-use-static-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 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 WarnRemoved
 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 WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-check-read
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-check-write
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-store-bounds
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-instrument-calls
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-instrument-marked-only
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 fchkp-use-wrappers
-C ObjC C++ ObjC++ LTO Deprecated
+C ObjC C++ ObjC++ LTO WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 static-libmpx
-Driver Deprecated
+Driver WarnRemoved
 Removed in GCC 9.  This switch has no effect.
 
 static-libmpxwrappers
-Driver Deprecated
+Driver WarnRemoved
 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++ WarnRemoved
 
 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++ WarnRemoved
 
 ffor-scope
-C++ ObjC++ Deprecated
+C++ ObjC++ WarnRemoved
 
 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++ WarnRemoved
 
 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++ WarnRemoved
 
 fhosted
 C ObjC
 Assume normal C execution environment.
 
 fhuge-objects
-C++ ObjC++ Deprecated
+C++ ObjC++ WarnRemoved
 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++ WarnRemoved
 
 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++ WarnRemoved
 
 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++ WarnRemoved
 
 fmudflapth
-C ObjC C++ ObjC++ Deprecated
+C ObjC C++ ObjC++ WarnRemoved
 
 fmudflapir
-C ObjC C++ ObjC++ Deprecated
+C ObjC C++ ObjC++ WarnRemoved
 
 fname-mangling-version-
-C++ ObjC++ Joined Deprecated
+C++ ObjC++ Joined WarnRemoved
 
 fnew-abi
-C++ ObjC++ Deprecated
+C++ ObjC++ WarnRemoved
 
 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++ WarnRemoved
 
 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++ WarnRemoved
 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++ WarnRemoved
 
 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++ WarnRemoved
 
 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++ WarnRemoved
 
 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++ WarnRemoved
 No longer supported.
 
 fvtable-thunks
-C++ ObjC++ Deprecated
+C++ ObjC++ WarnRemoved 
 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++ WarnRemoved
 No longer supported.
 
 fzero-link
diff --git a/gcc/common.opt b/gcc/common.opt
index f2214ed93ad..c1e114aa7a5 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 WarnRemoved
 Does nothing.  Preserved for backward compatibility.
 
 gcoff1
-Common Driver Deprecated
+Common Driver WarnRemoved
 Does nothing.  Preserved for backward compatibility.
 
 gcoff2
-Common Driver Deprecated
+Common Driver WarnRemoved
 Does nothing.  Preserved for backward compatibility.
 
 gcoff3
-Common Driver Deprecated
+Common Driver WarnRemoved
 Does nothing.  Preserved for backward compatibility.
 
 gcolumn-info
diff --git a/gcc/config/aarch64/aarch64.opt b/gcc/config/aarch64/aarch64.opt
index 2c8b22c3b09..55d466068b8 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 WarnRemoved 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..8ffbbc1e72b 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 WarnRemoved
 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..0483bb5ef94 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 WarnRemoved
 
 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 WarnRemoved
 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 WarnRemoved
 
 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..07da8a220d7 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 WarnRemoved
 
 msched-prefer-non-control-spec-insns
-Target Deprecated
+Target WarnRemoved
 
 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..1f37a927703 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 WarnRemoved
 
 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 WarnRemoved
 
 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) WarnRemoved
 
 mhtm
 Target Report Mask(HTM) Var(rs6000_isa_flags)
diff --git a/gcc/doc/options.texi b/gcc/doc/options.texi
index 1c83d241488..b59f4d39aef 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 WarnRemoved
+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..279c6b752ad 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_warn_removed:
       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..494d9c27a8b 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_warn_removed:
 	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..5423adb1a9a 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_warn_removed:
 	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..15195923a37 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 WarnRemoved"
+    else if (flag_set_p("WarnRemoved", flags[i])) {
+			  alias_data = "NULL, NULL, OPT_SPECIAL_warn_removed"
         if (warn_message != "NULL")
-				  print "#error Deprecated option with Warn"
+				  print "#error WarnRemoved option with Warn"
         if (flag_set_p("Report", flags[i]))
-				  print "#error Deprecated option with Report"
+				  print "#error WarnRemoved option with Report"
       }
 		else
 			alias_data = "NULL, NULL, N_OPTS"
diff --git a/gcc/opth-gen.awk b/gcc/opth-gen.awk
index 297456f62e7..e19626a02df 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_warn_removed,"
 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..b4ec1bd25ac 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_warn_removed)
 	{
 	  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_warn_removed)
     {
       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_warn_removed:
 	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_warn_removed)
     {
       /* 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_warn_removed)
     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..efd75aade6c 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_warn_removed
 		  && option->alias_target != OPT_SPECIAL_ignore
 		  && option->alias_target != OPT_SPECIAL_input_file
 		  && option->alias_target != OPT_SPECIAL_program_name
-- 
2.23.0


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-10 16:14           ` Martin Liška
@ 2019-09-10 16:18             ` Jakub Jelinek
  2019-09-10 16:46               ` Richard Sandiford
  0 siblings, 1 reply; 12+ messages in thread
From: Jakub Jelinek @ 2019-09-10 16:18 UTC (permalink / raw)
  To: Martin Liška; +Cc: Joseph Myers, Segher Boessenkool, gcc-patches

On Tue, Sep 10, 2019 at 06:14:11PM +0200, Martin Liška wrote:
> On 9/9/19 11:14 PM, Joseph Myers wrote:
> > On Mon, 9 Sep 2019, Jakub Jelinek wrote:
> > 
> > > > "IgnoreWarn" reads as "ignore the warning".
> > > > 
> > > > If we want it named as two things, can we just make it two things?
> > > > "Ignore WarnDeleted" or something.  Which also says what it is warning
> > > > about.
> > > 
> > > Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
> > > decides.
> > 
> > I prefer WarnRemoved.
> > 
> 
> Works for me. I'm going to install the tested patch.

I thought the decision is to replace Deprecated with Ignore WarnRemoved
where Ignore would handle the ignoring and WarnRemoved just add the warning
part on top of it.  So, OPT_SPECIAL_ignore plus some flag for WarnRemoved.

	Jakub

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-10 16:18             ` Jakub Jelinek
@ 2019-09-10 16:46               ` Richard Sandiford
  2019-09-10 16:48                 ` Jakub Jelinek
  2019-09-10 17:19                 ` Segher Boessenkool
  0 siblings, 2 replies; 12+ messages in thread
From: Richard Sandiford @ 2019-09-10 16:46 UTC (permalink / raw)
  To: Jakub Jelinek
  Cc: Martin Liška, Joseph Myers, Segher Boessenkool, gcc-patches

Jakub Jelinek <jakub@redhat.com> writes:
> On Tue, Sep 10, 2019 at 06:14:11PM +0200, Martin Liška wrote:
>> On 9/9/19 11:14 PM, Joseph Myers wrote:
>> > On Mon, 9 Sep 2019, Jakub Jelinek wrote:
>> > 
>> > > > "IgnoreWarn" reads as "ignore the warning".
>> > > > 
>> > > > If we want it named as two things, can we just make it two things?
>> > > > "Ignore WarnDeleted" or something.  Which also says what it is warning
>> > > > about.
>> > > 
>> > > Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
>> > > decides.
>> > 
>> > I prefer WarnRemoved.
>> > 
>> 
>> Works for me. I'm going to install the tested patch.
>
> I thought the decision is to replace Deprecated with Ignore WarnRemoved
> where Ignore would handle the ignoring and WarnRemoved just add the warning
> part on top of it.  So, OPT_SPECIAL_ignore plus some flag for WarnRemoved.

Is there any time you'd use WarnRemoved without Ignore though?
Seems better not to require two flags when one would do.

Richard

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  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
  1 sibling, 1 reply; 12+ messages in thread
From: Jakub Jelinek @ 2019-09-10 16:48 UTC (permalink / raw)
  To: Martin Liška, Joseph Myers, Segher Boessenkool, gcc-patches,
	richard.sandiford

On Tue, Sep 10, 2019 at 05:46:14PM +0100, Richard Sandiford wrote:
> Jakub Jelinek <jakub@redhat.com> writes:
> > On Tue, Sep 10, 2019 at 06:14:11PM +0200, Martin Liška wrote:
> >> On 9/9/19 11:14 PM, Joseph Myers wrote:
> >> > On Mon, 9 Sep 2019, Jakub Jelinek wrote:
> >> > 
> >> > > > "IgnoreWarn" reads as "ignore the warning".
> >> > > > 
> >> > > > If we want it named as two things, can we just make it two things?
> >> > > > "Ignore WarnDeleted" or something.  Which also says what it is warning
> >> > > > about.
> >> > > 
> >> > > Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
> >> > > decides.
> >> > 
> >> > I prefer WarnRemoved.
> >> > 
> >> 
> >> Works for me. I'm going to install the tested patch.
> >
> > I thought the decision is to replace Deprecated with Ignore WarnRemoved
> > where Ignore would handle the ignoring and WarnRemoved just add the warning
> > part on top of it.  So, OPT_SPECIAL_ignore plus some flag for WarnRemoved.
> 
> Is there any time you'd use WarnRemoved without Ignore though?

No.

> Seems better not to require two flags when one would do.

Well, the idea was to make it clear what it does.  That the current
Deprecated is about ignoring the option and on top of that warning
because the option has been removed.
It is more typing, but that is it, the *.awk scripts can diagnose easily
if WarnRemoved is used without Ignore.

	Jakub

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-10 16:46               ` Richard Sandiford
  2019-09-10 16:48                 ` Jakub Jelinek
@ 2019-09-10 17:19                 ` Segher Boessenkool
  1 sibling, 0 replies; 12+ messages in thread
From: Segher Boessenkool @ 2019-09-10 17:19 UTC (permalink / raw)
  To: Jakub Jelinek, Martin Liška, Joseph Myers, gcc-patches,
	richard.sandiford

On Tue, Sep 10, 2019 at 05:46:14PM +0100, Richard Sandiford wrote:
> Jakub Jelinek <jakub@redhat.com> writes:
> > On Tue, Sep 10, 2019 at 06:14:11PM +0200, Martin Liška wrote:
> >> On 9/9/19 11:14 PM, Joseph Myers wrote:
> >> > On Mon, 9 Sep 2019, Jakub Jelinek wrote:
> >> > 
> >> > > > "IgnoreWarn" reads as "ignore the warning".
> >> > > > 
> >> > > > If we want it named as two things, can we just make it two things?
> >> > > > "Ignore WarnDeleted" or something.  Which also says what it is warning
> >> > > > about.
> >> > > 
> >> > > Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
> >> > > decides.
> >> > 
> >> > I prefer WarnRemoved.
> >> > 
> >> 
> >> Works for me. I'm going to install the tested patch.
> >
> > I thought the decision is to replace Deprecated with Ignore WarnRemoved
> > where Ignore would handle the ignoring and WarnRemoved just add the warning
> > part on top of it.  So, OPT_SPECIAL_ignore plus some flag for WarnRemoved.
> 
> Is there any time you'd use WarnRemoved without Ignore though?
> Seems better not to require two flags when one would do.

We currently have in rs6000


;; This option existed in the past, but now is always off.
mno-mfpgpr
Target RejectNegative Undocumented Ignore

mmfpgpr
Target RejectNegative Undocumented Deprecated


It should *not* be ignored if someone uses -mmfpgpr; it should at least
warn for that.


Segher

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH] Rename Deprecated to IgnoreWarn in *.opt files.
  2019-09-10 16:48                 ` Jakub Jelinek
@ 2019-09-11  7:21                   ` Martin Liška
  0 siblings, 0 replies; 12+ messages in thread
From: Martin Liška @ 2019-09-11  7:21 UTC (permalink / raw)
  To: Jakub Jelinek, Joseph Myers, Segher Boessenkool, gcc-patches,
	richard.sandiford

On 9/10/19 6:48 PM, Jakub Jelinek wrote:
> On Tue, Sep 10, 2019 at 05:46:14PM +0100, Richard Sandiford wrote:
>> Jakub Jelinek <jakub@redhat.com> writes:
>>> On Tue, Sep 10, 2019 at 06:14:11PM +0200, Martin Liška wrote:
>>>> On 9/9/19 11:14 PM, Joseph Myers wrote:
>>>>> On Mon, 9 Sep 2019, Jakub Jelinek wrote:
>>>>>
>>>>>>> "IgnoreWarn" reads as "ignore the warning".
>>>>>>>
>>>>>>> If we want it named as two things, can we just make it two things?
>>>>>>> "Ignore WarnDeleted" or something.  Which also says what it is warning
>>>>>>> about.
>>>>>>
>>>>>> Or WarnRemoved.  Both work for me, but ultimately it would be best if Joseph
>>>>>> decides.
>>>>>
>>>>> I prefer WarnRemoved.
>>>>>
>>>>
>>>> Works for me. I'm going to install the tested patch.
>>>
>>> I thought the decision is to replace Deprecated with Ignore WarnRemoved
>>> where Ignore would handle the ignoring and WarnRemoved just add the warning
>>> part on top of it.  So, OPT_SPECIAL_ignore plus some flag for WarnRemoved.
>>
>> Is there any time you'd use WarnRemoved without Ignore though?
> 
> No.
> 
>> Seems better not to require two flags when one would do.
> 
> Well, the idea was to make it clear what it does.  That the current
> Deprecated is about ignoring the option and on top of that warning
> because the option has been removed.
> It is more typing, but that is it, the *.awk scripts can diagnose easily
> if WarnRemoved is used without Ignore.

I don't like it much to combine two flags.

Martin

> 
> 	Jakub
> 

^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2019-09-11  7:21 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-09 13:04 [PATCH] Rename Deprecated to IgnoreWarn in *.opt files Martin Liška
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

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).