diff options
| author | Takashi Iwai <tiwai@suse.de> | 2014-08-04 11:11:22 +0200 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2014-08-04 11:11:22 +0200 |
| commit | 2e65b8916cce4436df29812610d2c2fecdb42b5a (patch) | |
| tree | fdcae670bd651c8e772eb7cd60420eba5d26a0db /scripts/checkpatch.pl | |
| parent | 7440850c20b69658f322119d20a94dc914127cc7 (diff) | |
| parent | 00ef99408b6cc8d86ca614ada8025aa3606860db (diff) | |
Merge branch 'for-next' into for-linus
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 && |
