diff options
| author | Mark Brown <broonie@linaro.org> | 2014-07-08 17:17:56 +0200 |
|---|---|---|
| committer | Mark Brown <broonie@linaro.org> | 2014-07-08 17:17:56 +0200 |
| commit | 8b6c5d8c8b9c8a35b806aaa9dee71d8125e39120 (patch) | |
| tree | 6e9c1d8fd14cd5cb71d48d4257e1c1a91fb2a569 /scripts/checkpatch.pl | |
| parent | 19dee0d2c9f36a04387d8d0d7e531ab94eef6dc0 (diff) | |
| parent | 4c834452aad01531db949414f94f817a86348d59 (diff) | |
Merge tag 'v3.16-rc3' into spi-sh-msiof
Linux 3.16-rc3
Diffstat (limited to 'scripts/checkpatch.pl')
| -rwxr-xr-x | scripts/checkpatch.pl | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl index 010b18ef4ea0..182be0f12407 100755 --- a/scripts/checkpatch.pl +++ b/scripts/checkpatch.pl @@ -3476,12 +3476,17 @@ sub process { } } -# unnecessary return in a void function? (a single leading tab, then return;) - if ($sline =~ /^\+\treturn\s*;\s*$/ && - $prevline =~ /^\+/) { +# unnecessary return in a void function +# at end-of-function, with the previous line a single leading tab, then return; +# and the line before that not a goto label target like "out:" + if ($sline =~ /^[ \+]}\s*$/ && + $prevline =~ /^\+\treturn\s*;\s*$/ && + $linenr >= 3 && + $lines[$linenr - 3] =~ /^[ +]/ && + $lines[$linenr - 3] !~ /^[ +]\s*$Ident\s*:/) { WARN("RETURN_VOID", - "void function return statements are not generally useful\n" . $herecurr); - } + "void function return statements are not generally useful\n" . $hereprev); + } # if statements using unnecessary parentheses - ie: if ((foo == bar)) if ($^V && $^V ge 5.10.0 && |
