mirror of https://gitee.com/openkylin/linux.git
checkpatch: Warn on code with 6+ tab indentation
Overly indented code should be refactored. Suggest refactoring excessive indentation of of if/else/for/do/while/switch statements. For example: $ cat t.c #include <stdio.h> #include <stdlib.h> int main(int argc, char **argv) { if (1) if (2) if (3) if (4) if (5) if (6) if (7) if (8) ; return 0; } $ ./scripts/checkpatch.pl -f t.c WARNING: Too many leading tabs - consider code refactoring #12: FILE: t.c:12: + if (6) WARNING: Too many leading tabs - consider code refactoring #13: FILE: t.c:13: + if (7) WARNING: Too many leading tabs - consider code refactoring #14: FILE: t.c:14: + if (8) total: 0 errors, 3 warnings, 17 lines checked t.c has style problems, please review. If any of these errors are false positives, please report them to the maintainer, see CHECKPATCH in MAINTAINERS. Signed-off-by: Joe Perches <joe@perches.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
6bd113f1f4
commit
8eef05dd3e
|
@ -1924,6 +1924,12 @@ sub process {
|
|||
my $pre_ctx = "$1$2";
|
||||
|
||||
my ($level, @ctx) = ctx_statement_level($linenr, $realcnt, 0);
|
||||
|
||||
if ($line =~ /^\+\t{6,}/) {
|
||||
WARN("DEEP_INDENTATION",
|
||||
"Too many leading tabs - consider code refactoring\n" . $herecurr);
|
||||
}
|
||||
|
||||
my $ctx_cnt = $realcnt - $#ctx - 1;
|
||||
my $ctx = join("\n", @ctx);
|
||||
|
||||
|
|
Loading…
Reference in New Issue