[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACJJ=pyLqhrxka2jXtby9CUqsAr=-_oQUraH5ua3PZpgXHgdOQ@mail.gmail.com>
Date: Wed, 6 Feb 2019 09:32:12 -0800
From: Jon Flatley <jflat@...omium.org>
To: Nathan Chancellor <natechancellor@...il.com>
Cc: Masahiro Yamada <yamada.masahiro@...ionext.com>,
jflat@...omium.org,
Linux Kbuild mailing list <linux-kbuild@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Michal Marek <michal.lkml@...kovi.net>,
Nick Desaulniers <ndesaulniers@...gle.com>
Subject: Re: [PATCH] kbuild, LLVMLinux: Don't suppress format warnings
On Wed, Feb 6, 2019 at 8:45 AM Nathan Chancellor
<natechancellor@...il.com> wrote:
>
> On Tue, Feb 05, 2019 at 05:26:05PM +0900, Masahiro Yamada wrote:
> > On Sat, Feb 2, 2019 at 6:10 AM <jflat@...omium.org> wrote:
> > >
> > > From: Jon Flatley <jflat@...omium.org>
> > >
> > > gcc produces format warnings that clang suppresses. To keep behavior
> > > consistent between gcc and clang, don't suppress format warnings in
> > > clang.
> > >
> > > Signed-off-by: Jon Flatley <jflat@...omium.org>
> > > ---
> >
> > Applied to linux-kbuild.
> > Thanks.
> >
> >
>
> Hi Jon and Masahiro,
>
> Just as a heads up, this introduces a ton of warnings (duh). Isn't the
> typical plan behind turning on warnings that were disabled to build with
> 'W=', fix them all, then turn them on so as not to pollute the build?
>
> Log file: https://gist.github.com/443db156e56cd3c0f6b21d9d77728d80
>
> Note a big chunk of them come from one scnprintf call in
> include/linux/usb/wusb.h but still, there are many other warnings that
> make quite a bit of noise. Some seem relatively easy to fix, which I
> suppose I will try to tackle soon.
>
> Thanks,
> Nathan
>
Hi Nathan,
This was definitely not my intention.
I noticed the added warnings this morning and was considering calling
for a revert on this patch.
The intent was to match the behavior of gcc, as it has -Wformat enabled.
It was rather naive of me to assume the behavior of -Wformat would be
the same in both gcc and clang.
Indeed, it seems gcc is more permissive about what format
substitutions it allows.
For example passing int to the "%hu" format specifier is fine in gcc
under -Wformat but produces a warning in clang.
Maybe this was the motivation for adding -Wno-format to clang in the
first place.
This difference is puzzling to me, and I wonder if it's by design.
Considering the whole point of this patch was to sync up this behavior
between gcc and clang I am OK with reverting this.
Thanks,
Jon
> >
> >
> > > scripts/Makefile.extrawarn | 1 -
> > > 1 file changed, 1 deletion(-)
> > >
> > > diff --git a/scripts/Makefile.extrawarn b/scripts/Makefile.extrawarn
> > > index 768306add591..94daf4e1fc73 100644
> > > --- a/scripts/Makefile.extrawarn
> > > +++ b/scripts/Makefile.extrawarn
> > > @@ -68,7 +68,6 @@ else
> > > ifdef CONFIG_CC_IS_CLANG
> > > KBUILD_CFLAGS += $(call cc-disable-warning, initializer-overrides)
> > > KBUILD_CFLAGS += $(call cc-disable-warning, unused-value)
> > > -KBUILD_CFLAGS += $(call cc-disable-warning, format)
> > > KBUILD_CFLAGS += $(call cc-disable-warning, sign-compare)
> > > KBUILD_CFLAGS += $(call cc-disable-warning, format-zero-length)
> > > KBUILD_CFLAGS += $(call cc-disable-warning, uninitialized)
> > > --
> > > 2.20.1.611.gfbb209baf1-goog
> > >
> >
> >
> > --
> > Best Regards
> > Masahiro Yamada
Powered by blists - more mailing lists