Messages in this thread | | | Date | Tue, 28 Nov 2017 14:25:32 -0600 | From | "Gustavo A. R. Silva" <> | Subject | Re: [PATCH] x86/syscalls: Mark expected switch fall-throughs |
| |
Quoting Thomas Gleixner <tglx@linutronix.de>:
> On Tue, 28 Nov 2017, Alan Cox wrote: > >> > I have no idea who came up with that brilliant idea of parsing comments in >> > the code. It's so simple to make this parser completely fail that it's not >> >> Stephen Johnson (author of the V7 portable C compiler), which is where >> it's from (the lint tool). He also wrote yacc so he does know a bit about >> parsers 8). > > I don't doubt that. > >> > even funny anymore. >> >> The notation in question has been standard in tools like lint since the >> end of the 1970s > > Fair enough. > > Still that does not make the GCC implementation which defaults to take 'any > comment' as valid any better and does not solve other parsing issues which > have been pointed out in various GCC bugs. Using the macro annotation is > distinct and has no ifs and buts. >
The thing about taking 'any comment' as valid is false if you add the following to your Makefile:
KBUILD_CFLAGS += $(call cc-option,-Wimplicit-fallthrough)
This option takes the following comments as valid:
/* fall through */ /* Fall through */ /* fall through - ... */ /* Fall through - ... */
Comments as fallthru, fallthrough, FALLTHRU are invalid.
And of course if you intentionally change the option to:
KBUILD_CFLAGS += $(call cc-option,-Wimplicit-fallthrough=1)
it means that you obviously want to ignore any warning.
Thanks -- Gustavo A. R. Silva
| |