提交 11e1f11d 编写于 作者: S Shi Lei 提交者: Michal Privoznik

syntax-check: Check for incorrect indentation in function body

This patch add syntax-check rule for incorrect indentation and blank
first line in function body by changing check-spacing.pl.
For efficiency, it only checks the first line of function body.
But it's enough for most cases.
Signed-off-by: NShi Lei <shi_lei@massclouds.com>
上级 eaa765ef
......@@ -31,6 +31,7 @@ foreach my $file (@ARGV) {
my $cb_linenum = 0;
my $cb_code = "";
my $cb_scolon = 0;
my $fn_linenum = 0;
open FILE, $file;
......@@ -50,6 +51,27 @@ foreach my $file (@ARGV) {
next if $data =~ /^#/;
# Detect start of function block
if ($data =~ /^{$/) {
$fn_linenum = $.;
}
# Handle first line of function block
if ($fn_linenum && $fn_linenum != $.) {
if ($data =~ /^\s*$/) {
print "Blank line before content in function body:\n";
print "$file:$.:\n$line";
$ret = 1;
} elsif ($data !~ /^[ ]{4}\S/) {
unless ($data =~ /^[ ]\w+:$/ || $data =~ /^}/) {
print "Incorrect indentation in function body:\n";
print "$file:$.:\n$line";
$ret = 1;
}
}
$fn_linenum = 0;
}
# Kill contents of multi-line comments
# and detect end of multi-line comments
if ($incomment) {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册