From: Kees Cook <keescook@chromium.org>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [PATCH 000/141] Fix fall-through warnings for Clang
Date: Fri, 20 Nov 2020 11:30:40 -0800 [thread overview]
Message-ID: <202011201129.B13FDB3C@keescook> (raw)
In-Reply-To: <20201120105344.4345c14e@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
On Fri, Nov 20, 2020 at 10:53:44AM -0800, Jakub Kicinski wrote:
> On Fri, 20 Nov 2020 12:21:39 -0600 Gustavo A. R. Silva wrote:
> > This series aims to fix almost all remaining fall-through warnings in
> > order to enable -Wimplicit-fallthrough for Clang.
> >
> > In preparation to enable -Wimplicit-fallthrough for Clang, explicitly
> > add multiple break/goto/return/fallthrough statements instead of just
> > letting the code fall through to the next case.
> >
> > Notice that in order to enable -Wimplicit-fallthrough for Clang, this
> > change[1] is meant to be reverted at some point. So, this patch helps
> > to move in that direction.
> >
> > Something important to mention is that there is currently a discrepancy
> > between GCC and Clang when dealing with switch fall-through to empty case
> > statements or to cases that only contain a break/continue/return
> > statement[2][3][4].
>
> Are we sure we want to make this change? Was it discussed before?
>
> Are there any bugs Clangs puritanical definition of fallthrough helped
> find?
>
> IMVHO compiler warnings are supposed to warn about issues that could
> be bugs. Falling through to default: break; can hardly be a bug?!
It's certainly a place where the intent is not always clear. I think
this makes all the cases unambiguous, and doesn't impact the machine
code, since the compiler will happily optimize away any behavioral
redundancy.
--
Kees Cook
next prev parent reply other threads:[~2020-11-20 19:30 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-11-20 18:21 [Cluster-devel] [PATCH 000/141] Fix fall-through warnings for Clang Gustavo A. R. Silva
2020-11-20 18:25 ` [Cluster-devel] [PATCH 006/141] gfs2: " Gustavo A. R. Silva
2021-04-20 20:29 ` Gustavo A. R. Silva
2021-04-20 20:40 ` Andreas Grünbacher
2020-11-20 18:28 ` [Cluster-devel] [PATCH 000/141] " Joe Perches
2020-11-20 19:02 ` Gustavo A. R. Silva
2020-11-20 18:53 ` Jakub Kicinski
2020-11-20 19:04 ` Gustavo A. R. Silva
2020-11-20 19:30 ` Kees Cook [this message]
2020-11-20 19:51 ` Jakub Kicinski
2020-11-20 20:48 ` Kees Cook
2020-11-22 16:17 ` Kees Cook
2020-11-22 18:21 ` James Bottomley
2020-11-22 18:25 ` Joe Perches
2020-11-22 19:12 ` James Bottomley
2020-11-22 19:22 ` Joe Perches
2020-11-22 19:53 ` James Bottomley
2020-11-23 13:03 ` [Cluster-devel] [Intel-wired-lan] " Gustavo A. R. Silva
2020-11-23 16:31 ` James Bottomley
2020-11-24 21:32 ` Kees Cook
2020-11-24 22:24 ` Finn Thain
2020-11-24 23:15 ` Miguel Ojeda
2020-11-24 23:53 ` Finn Thain
2020-11-25 1:05 ` Miguel Ojeda
2020-11-25 7:05 ` James Bottomley
2020-11-25 12:24 ` Nick Desaulniers
2020-11-25 16:24 ` Jakub Kicinski
2020-11-25 17:04 ` Miguel Ojeda
2020-11-25 22:09 ` Nick Desaulniers
2020-11-25 21:33 ` Finn Thain
2020-11-25 22:09 ` Nick Desaulniers
2020-11-25 23:21 ` Finn Thain
2020-11-26 0:30 ` Finn Thain
2020-11-25 21:10 ` Kees Cook
2020-11-22 20:35 ` [Cluster-devel] " Miguel Ojeda
2020-11-22 22:36 ` James Bottomley
2020-11-23 14:19 ` Miguel Ojeda
2020-11-23 15:58 ` James Bottomley
2020-11-23 16:24 ` Rafael J. Wysocki
2020-11-23 16:32 ` Joe Perches
2020-11-23 18:56 ` Miguel Ojeda
2020-11-23 20:37 ` James Bottomley
2020-11-25 0:32 ` Miguel Ojeda
2020-11-25 22:44 ` Edward Cree
2020-11-26 14:53 ` Miguel Ojeda
2020-11-26 15:28 ` Geert Uytterhoeven
2020-11-26 16:18 ` Karol Herbst
2020-11-26 17:05 ` Miguel Ojeda
2020-11-25 10:38 ` Andy Shevchenko
2020-11-25 9:01 ` Sean Young
2020-11-22 22:54 ` Finn Thain
2020-11-22 23:04 ` James Bottomley
2020-11-23 14:05 ` Miguel Ojeda
2020-11-24 0:58 ` Finn Thain
2020-11-24 1:05 ` Joe Perches
2020-11-24 2:48 ` Finn Thain
2020-11-24 23:46 ` Miguel Ojeda
2020-11-22 22:10 ` Sam Ravnborg
2020-11-24 1:32 ` Nick Desaulniers
2020-11-24 1:46 ` Jakub Kicinski
2020-11-24 21:25 ` Kees Cook
2020-11-25 23:02 ` Edward Cree
2020-12-01 14:08 ` Dan Carpenter
2020-12-01 14:04 ` Dan Carpenter
2020-11-20 22:21 ` Miguel Ojeda
2020-11-23 20:03 ` Jason Gunthorpe
2020-11-24 14:47 ` Gustavo A. R. Silva
2020-11-23 20:38 ` Mark Brown
2020-11-24 14:47 ` Gustavo A. R. Silva
2020-12-01 5:52 ` Martin K. Petersen
2020-12-01 8:20 ` Gustavo A. R. Silva
2020-12-08 4:52 ` [Cluster-devel] (subset) " Martin K. Petersen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202011201129.B13FDB3C@keescook \
--to=keescook@chromium.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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 NNTP newsgroup(s).