+2019-09-10 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.
+
2019-09-10 Arnaud Charlet <charlet@adacore.com>
* doc/install.texi: Fix syntax for html generation.
+2019-09-10 Martin Liska <mliska@suse.cz>
+
+ * c.opt: Use newly added WarnRemoved.
+
2019-09-09 Martin Liska <mliska@suse.cz>
* c.opt: Update comment of removed
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
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
-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
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
Generate code to check exception specifications.
fenum-int-equiv
-C++ ObjC++ Deprecated
+C++ ObjC++ WarnRemoved
fexec-charset=
C ObjC C++ ObjC++ Joined RejectNegative
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++
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
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)
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)
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)
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
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)
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)
-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)
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
Generate a #line directive pointing at the current working directory.
fxref
-C++ ObjC++ Deprecated
+C++ ObjC++ WarnRemoved
No longer supported.
fzero-link
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
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
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
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
Support CLWB instruction.
mpcommit
-Target Deprecated
-;; Deprecated
+Target WarnRemoved
mfxsr
Target Report Mask(ISA_FXSR) 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
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
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)
Target RejectNegative Undocumented Ignore
mmfpgpr
-Target RejectNegative Undocumented Deprecated
+Target RejectNegative Undocumented WarnRemoved
maltivec
Target Report Mask(ALTIVEC) Var(rs6000_isa_flags)
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)
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)
(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
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:
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:
{
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;
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"
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 "};"
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);
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)
{
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;
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)
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);
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