Re: [PATCH] perf/x86/intel: Mark expected switch fall-throughs

Miguel Ojeda
2019-06-24T22:28:39Z

On Mon, Jun 24, 2019 at 10:53 PM Gustavo A. R. Silva
<gustavo@embeddedor.com> wrote:
>
> Once the C++17 `__attribute__((fallthrough))` is more widely handled by C compilers,
> static analyzers, and IDEs, we can switch to using that instead. Also, we are a few
> warnings away (less than five) from being able to enable -Wimplicit-fallthrough. After
> this option has been finally enabled (in v5.3) we can easily go and replace the comments
> to whatever we agree upon.

Indeed -- the decision last year was to wait for a while since not
everyone had support for it. My branch is waiting here:

https://github.com/ojeda/linux/tree/compiler-attributes-fallthrough

The good news is that there is some progress. For instance, LLVM is
working on supporting the GNU spelling:

https://reviews.llvm.org/D63260
https://bugs.llvm.org/show_bug.cgi?id=37135
https://github.com/ClangBuiltLinux/linux/issues/235

Also note that C2x may get [[fallthrough]]. See N2267 and N2335. At
that point, surely tools/IDEs/analyzers will support it :-) The
question is whether we want to wait that long to replace the comments.

On related news, we also may get __has_c_attribute() standardized
(i.e. we use __has_attribute() now), too, see N2333.

Cheers,
Miguel