diff options
author | Lewis Hyatt <lhyatt@gmail.com> | 2020-08-13 13:05:46 -0400 |
---|---|---|
committer | Lewis Hyatt <lhyatt@gmail.com> | 2020-08-14 09:29:19 -0400 |
commit | 129a1319c0ab73f4bfc5598dffedb06378b00fc0 (patch) | |
tree | 968c9d5710c2a4431c5c98d8e15ca9474b7ca9be /gcc/doc | |
parent | 22dc89f8073cd0126efa72aa3ab88e80c78d45e3 (diff) | |
download | gcc-129a1319c0ab73f4bfc5598dffedb06378b00fc0.zip gcc-129a1319c0ab73f4bfc5598dffedb06378b00fc0.tar.gz gcc-129a1319c0ab73f4bfc5598dffedb06378b00fc0.tar.bz2 |
diagnostics: Add new option -fdiagnostics-plain-output
Adds the new option -fdiagnostics-plain-output, which is an alias for
several others:
-fno-diagnostics-show-caret
-fno-diagnostics-show-line-numbers
-fdiagnostics-color=never
-fdiagnostics-urls=never
The idea is that in the future, if the default behavior of diagnostics is
changed to add some fancy feature or other, then the
-fdiagnostics-plain-output option will also be changed accordingly so that
the old behavior is preserved in the presence of this option. This allows
us to use -fdiagnostics-plain-output in in the testsuite, such that the
testsuite (specifically the setting of TEST_ALWAYS_FLAGS in prune.exp)
does not need to be touched whenever diagnostics get a new look. This also
removes the need to add workarounds to compat.exp for every new option
that may be needed in a newer version of the compiler, but is not
supported in older versions.
gcc/ChangeLog:
* common.opt: Add new option -fdiagnostics-plain-output.
* doc/invoke.texi: Document it.
* opts-common.c (decode_cmdline_options_to_array): Implement it.
(decode_cmdline_option): Add missing const qualifier to argv.
libstdc++-v3/ChangeLog:
* testsuite/lib/libstdc++.exp: Use the new option
-fdiagnostics-plain-output.
gcc/testsuite/ChangeLog:
* lib/prune.exp: Change TEST_ALWAYS_FLAGS to use -fdiagnostics-plain-output.
* lib/c-compat.exp: Adapt to the prune.exp change.
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/invoke.texi | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index dea1e18..70dc1ab 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -280,6 +280,7 @@ Objective-C and Objective-C++ Dialects}. @item Diagnostic Message Formatting Options @xref{Diagnostic Message Formatting Options,,Options to Control Diagnostic Messages Formatting}. @gccoptlist{-fmessage-length=@var{n} @gol +-fdiagnostics-plain-output @gol -fdiagnostics-show-location=@r{[}once@r{|}every-line@r{]} @gol -fdiagnostics-color=@r{[}auto@r{|}never@r{|}always@r{]} @gol -fdiagnostics-urls=@r{[}auto@r{|}never@r{|}always@r{]} @gol @@ -4291,6 +4292,19 @@ Note - this option also affects the display of the @samp{#error} and function/type/variable attribute. It does not however affect the @samp{pragma GCC warning} and @samp{pragma GCC error} pragmas. +@item -fdiagnostics-plain-output +This option requests that diagnostic output look as plain as possible, which +may be useful when running @command{dejagnu} or other utilities that need to +parse diagnostics output and prefer that it remain more stable over time. +@option{-fdiagnostics-plain-output} is currently equivalent to the following +options: +@gccoptlist{-fno-diagnostics-show-caret @gol +-fno-diagnostics-show-line-numbers @gol +-fdiagnostics-color=never @gol +-fdiagnostics-urls=never} +In the future, if GCC changes the default appearance of its diagnostics, the +corresponding option to disable the new behavior will be added to this list. + @item -fdiagnostics-show-location=once @opindex fdiagnostics-show-location Only meaningful in line-wrapping mode. Instructs the diagnostic messages |