Message ID | 9321d38e-a185-5505-62a5-574d64446798@suse.cz |
---|---|
State | New |
Headers | show |
Series | docs: document sanitizers can trigger warnings | expand |
On 10/26/22 05:09, Martin Liška wrote: > PR sanitizer/107298 > > gcc/ChangeLog: > > * doc/invoke.texi: Document sanitizers can trigger warnings. OK jeff
On Wed, Oct 26, 2022 at 7:09 AM Martin Liška <mliska@suse.cz> wrote: > > PR sanitizer/107298 > > gcc/ChangeLog: > > * doc/invoke.texi: Document sanitizers can trigger warnings. > --- > gcc/doc/invoke.texi | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi > index 64f77e8367a..1ffbba16a72 100644 > --- a/gcc/doc/invoke.texi > +++ b/gcc/doc/invoke.texi > @@ -16460,6 +16460,10 @@ by this option. > > @end table > > +Note the enabled sanitizer options tend to increase a false-positive rate > +of selected warnings, most notably @option{-Wmaybe-uninitialized}. > +And thus we recommend to disable @option{-Werror}. > + I'd recommend rewording the second sentence there as: "Thus, GCC developers recommend disabling @option{-Werror} when using sanitizer options." > While @option{-ftrapv} causes traps for signed overflows to be emitted, > @option{-fsanitize=undefined} gives a diagnostic message. > This currently works only for the C family of languages. > -- > 2.38.0 >
Hi Martin, On Wed, 26 Oct 2022, Martin Liška wrote: > +Note the enabled sanitizer options tend to increase a false-positive rate > +of selected warnings, most notably @option{-Wmaybe-uninitialized}. > +And thus we recommend to disable @option{-Werror}. I've been sitting muling over this and here is what I'm wondering might be a possible alternative? Note that sanitzers tend to increase the rate of false positive warnings, most notably those around @option{-Wmaybe-uninitialized}. We recommend against combining @option{-Werror} and [the use of] sanitzers. Rationale for the second sentence: Disabling a warning that is off by default confused my mental model (and maybe those of other readers). :-) What do you think? Gerald
On 11/3/22 13:32, Gerald Pfeifer wrote: > Hi Martin, > > On Wed, 26 Oct 2022, Martin Liška wrote: >> +Note the enabled sanitizer options tend to increase a false-positive rate >> +of selected warnings, most notably @option{-Wmaybe-uninitialized}. >> +And thus we recommend to disable @option{-Werror}. > > I've been sitting muling over this and here is what I'm wondering might > be a possible alternative? > > Note that sanitzers tend to increase the rate of false positive > warnings, most notably those around @option{-Wmaybe-uninitialized}. > We recommend against combining @option{-Werror} and [the use of] > sanitzers. > > > Rationale for the second sentence: Disabling a warning that is off by > default confused my mental model (and maybe those of other readers). :-) > > What do you think? I welcome it and I've pushed pushed your version. Thanks, Martin > > Gerald
diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 64f77e8367a..1ffbba16a72 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -16460,6 +16460,10 @@ by this option. @end table +Note the enabled sanitizer options tend to increase a false-positive rate +of selected warnings, most notably @option{-Wmaybe-uninitialized}. +And thus we recommend to disable @option{-Werror}. + While @option{-ftrapv} causes traps for signed overflows to be emitted, @option{-fsanitize=undefined} gives a diagnostic message. This currently works only for the C family of languages.