Re: [PATCH v2 1/1] scripts/checkpatch.pl: avoid false warning missing break

From: Joe Perches
Date: Sun Sep 10 2017 - 13:59:23 EST


On Sun, 2017-09-10 at 17:46 +0200, Heinrich Schuchardt wrote:
> void foo(int a)
> switch (a) {
> case 'h':
> fun1();
> exit(1);
> default:
> }
>
> creates a warning
> Possible switch case/default not preceded by break
> or fallthrough comment
>
> exit( should be treated like return.
>
> Signed-off-by: Heinrich Schuchardt <xypron.glpk@xxxxxx>

Acked-by: Joe Perches <joe@xxxxxxxxxxx>

> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
[]
> @@ -6084,7 +6084,7 @@ sub process {
> next if ($fline =~ /^.[\s$;]*$/);
> $has_statement = 1;
> $count++;
> - $has_break = 1 if ($fline =~ /\bswitch\b|\b(?:break\s*;[\s$;]*$|return\b|goto\b|continue\b)/);
> + $has_break = 1 if ($fline =~ /\bswitch\b|\b(?:break\s*;[\s$;]*$|exit\s*\(\b|return\b|goto\b|continue\b)/);
> }
> if (!$has_break && $has_statement) {
> WARN("MISSING_BREAK",