aboutsummaryrefslogtreecommitdiffstats
path: root/scripts
diff options
context:
space:
mode:
Diffstat (limited to 'scripts')
-rwxr-xr-xscripts/checkpatch.pl6
1 files changed, 5 insertions, 1 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 74bba23a8df0..52a223ebcd10 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2641,10 +2641,14 @@ sub process {
2641 next if ($realfile !~ /\.(h|c)$/); 2641 next if ($realfile !~ /\.(h|c)$/);
2642 2642
2643# check indentation of any line with a bare else 2643# check indentation of any line with a bare else
2644# (but not if it is a multiple line "if (foo) return bar; else return baz;")
2644# if the previous line is a break or return and is indented 1 tab more... 2645# if the previous line is a break or return and is indented 1 tab more...
2645 if ($sline =~ /^\+([\t]+)(?:}[ \t]*)?else(?:[ \t]*{)?\s*$/) { 2646 if ($sline =~ /^\+([\t]+)(?:}[ \t]*)?else(?:[ \t]*{)?\s*$/) {
2646 my $tabs = length($1) + 1; 2647 my $tabs = length($1) + 1;
2647 if ($prevline =~ /^\+\t{$tabs,$tabs}(?:break|return)\b/) { 2648 if ($prevline =~ /^\+\t{$tabs,$tabs}break\b/ ||
2649 ($prevline =~ /^\+\t{$tabs,$tabs}return\b/ &&
2650 defined $lines[$linenr] &&
2651 $lines[$linenr] !~ /^[ \+]\t{$tabs,$tabs}return/)) {
2648 WARN("UNNECESSARY_ELSE", 2652 WARN("UNNECESSARY_ELSE",
2649 "else is not generally useful after a break or return\n" . $hereprev); 2653 "else is not generally useful after a break or return\n" . $hereprev);
2650 } 2654 }