Commit 53210168 authored by Andy Whitcroft's avatar Andy Whitcroft Committed by Linus Torvalds

checkpatch: toughen trailing if statement checks and extend them to while and for

Extend the trailing statement checks to report a trailing semi-colon ';'
as we really want it on the next line and indented so it is really really
obvious.  Also extend the tests to include while and for.
Signed-off-by: default avatarAndy Whitcroft <apw@shadowen.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 8d31cfce
...@@ -1269,8 +1269,8 @@ sub process { ...@@ -1269,8 +1269,8 @@ sub process {
$ctx_ln++; $ctx_ln++;
} }
##print "realcnt<$realcnt> ctx_cnt<$ctx_cnt>\n"; #print "realcnt<$realcnt> ctx_cnt<$ctx_cnt>\n";
##print "pre<$pre_ctx>\nline<$line>\nctx<$ctx>\nnext<$lines[$ctx_ln - 1]>\n"; #print "pre<$pre_ctx>\nline<$line>\nctx<$ctx>\nnext<$lines[$ctx_ln - 1]>\n";
if ($ctx !~ /{\s*/ && defined($lines[$ctx_ln -1]) && $lines[$ctx_ln - 1] =~ /^\+\s*{/) { if ($ctx !~ /{\s*/ && defined($lines[$ctx_ln -1]) && $lines[$ctx_ln - 1] =~ /^\+\s*{/) {
ERROR("that open brace { should be on the previous line\n" . ERROR("that open brace { should be on the previous line\n" .
...@@ -1713,7 +1713,7 @@ sub process { ...@@ -1713,7 +1713,7 @@ sub process {
} }
# Check for illegal assignment in if conditional. # Check for illegal assignment in if conditional.
if ($line =~ /\bif\s*\(/) { if ($line =~ /\b(?:if|while|for)\s*\(/ && $line !~ /^.\s*#/) {
my ($s, $c) = ($stat, $cond); my ($s, $c) = ($stat, $cond);
if ($c =~ /\bif\s*\(.*[^<>!=]=[^=].*/) { if ($c =~ /\bif\s*\(.*[^<>!=]=[^=].*/) {
...@@ -1725,8 +1725,8 @@ sub process { ...@@ -1725,8 +1725,8 @@ sub process {
substr($s, 0, length($c), ''); substr($s, 0, length($c), '');
$s =~ s/\n.*//g; $s =~ s/\n.*//g;
$s =~ s/$;//g; # Remove any comments $s =~ s/$;//g; # Remove any comments
if (length($c) && $s !~ /^\s*({|;|)\s*\\*\s*$/ && if (length($c) && $s !~ /^\s*{?\s*\\*\s*$/ &&
$c !~ /^.\s*\#\s*if/) $c !~ /}\s*while\s*/)
{ {
ERROR("trailing statements should be on next line\n" . $herecurr); ERROR("trailing statements should be on next line\n" . $herecurr);
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment