checkpatch: add sub routine get_stat_here()
checkpatch currently contains duplicate code. We can define a sub routine and call that instead. This reduces code duplication and line count. Add subroutine get_stat_here(). Link: http://lkml.kernel.org/r/1519700648-23108-4-git-send-email-me@tobin.cc Signed-off-by: Tobin C. Harding <me@tobin.cc> Cc: Joe Perches <joe@perches.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
c2066ca350
commit
e3d95a2a05
|
@ -1656,6 +1656,17 @@ sub get_stat_real {
|
|||
return $stat_real;
|
||||
}
|
||||
|
||||
sub get_stat_here {
|
||||
my ($linenr, $cnt, $here) = @_;
|
||||
|
||||
my $herectx = $here . "\n";
|
||||
for (my $n = 0; $n < $cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
|
||||
return $herectx;
|
||||
}
|
||||
|
||||
sub cat_vet {
|
||||
my ($vet) = @_;
|
||||
my ($res, $coded);
|
||||
|
@ -4967,12 +4978,8 @@ sub process {
|
|||
#print "REST<$rest> dstat<$dstat> ctx<$ctx>\n";
|
||||
|
||||
$ctx =~ s/\n*$//;
|
||||
my $herectx = $here . "\n";
|
||||
my $stmt_cnt = statement_rawlines($ctx);
|
||||
|
||||
for (my $n = 0; $n < $stmt_cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
my $herectx = get_stat_here($linenr, $stmt_cnt, $here);
|
||||
|
||||
if ($dstat ne '' &&
|
||||
$dstat !~ /^(?:$Ident|-?$Constant),$/ && # 10, // foo(),
|
||||
|
@ -5044,12 +5051,9 @@ sub process {
|
|||
# check for macros with flow control, but without ## concatenation
|
||||
# ## concatenation is commonly a macro that defines a function so ignore those
|
||||
if ($has_flow_statement && !$has_arg_concat) {
|
||||
my $herectx = $here . "\n";
|
||||
my $cnt = statement_rawlines($ctx);
|
||||
my $herectx = get_stat_here($linenr, $cnt, $here);
|
||||
|
||||
for (my $n = 0; $n < $cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
WARN("MACRO_WITH_FLOW_CONTROL",
|
||||
"Macros with flow control statements should be avoided\n" . "$herectx");
|
||||
}
|
||||
|
@ -5089,11 +5093,7 @@ sub process {
|
|||
|
||||
$ctx =~ s/\n*$//;
|
||||
my $cnt = statement_rawlines($ctx);
|
||||
my $herectx = $here . "\n";
|
||||
|
||||
for (my $n = 0; $n < $cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
my $herectx = get_stat_here($linenr, $cnt, $here);
|
||||
|
||||
if (($stmts =~ tr/;/;/) == 1 &&
|
||||
$stmts !~ /^\s*(if|while|for|switch)\b/) {
|
||||
|
@ -5107,11 +5107,7 @@ sub process {
|
|||
} elsif ($dstat =~ /^\+\s*#\s*define\s+$Ident.*;\s*$/) {
|
||||
$ctx =~ s/\n*$//;
|
||||
my $cnt = statement_rawlines($ctx);
|
||||
my $herectx = $here . "\n";
|
||||
|
||||
for (my $n = 0; $n < $cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
my $herectx = get_stat_here($linenr, $cnt, $here);
|
||||
|
||||
WARN("TRAILING_SEMICOLON",
|
||||
"macros should not use a trailing semicolon\n" . "$herectx");
|
||||
|
@ -5234,12 +5230,8 @@ sub process {
|
|||
}
|
||||
}
|
||||
if ($level == 0 && $block =~ /^\s*\{/ && !$allowed) {
|
||||
my $herectx = $here . "\n";
|
||||
my $cnt = statement_rawlines($block);
|
||||
|
||||
for (my $n = 0; $n < $cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
my $herectx = get_stat_here($linenr, $cnt, $here);
|
||||
|
||||
WARN("BRACES",
|
||||
"braces {} are not necessary for single statement blocks\n" . $herectx);
|
||||
|
@ -6096,11 +6088,9 @@ sub process {
|
|||
}
|
||||
if ($r1 !~ /^sizeof\b/ && $r2 =~ /^sizeof\s*\S/ &&
|
||||
!($r1 =~ /^$Constant$/ || $r1 =~ /^[A-Z_][A-Z0-9_]*$/)) {
|
||||
my $herectx = $here . "\n";
|
||||
my $cnt = statement_rawlines($stat);
|
||||
for (my $n = 0; $n < $cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
my $herectx = get_stat_here($linenr, $cnt, $here);
|
||||
|
||||
if (WARN("ALLOC_WITH_MULTIPLY",
|
||||
"Prefer $newfunc over $oldfunc with multiply\n" . $herectx) &&
|
||||
$cnt == 1 &&
|
||||
|
@ -6183,11 +6173,9 @@ sub process {
|
|||
if ($^V && $^V ge 5.10.0 &&
|
||||
defined $stat &&
|
||||
$stat =~ /^\+[$;\s]*(?:case[$;\s]+\w+[$;\s]*:[$;\s]*|)*[$;\s]*\bdefault[$;\s]*:[$;\s]*;/g) {
|
||||
my $herectx = $here . "\n";
|
||||
my $cnt = statement_rawlines($stat);
|
||||
for (my $n = 0; $n < $cnt; $n++) {
|
||||
$herectx .= raw_line($linenr, $n) . "\n";
|
||||
}
|
||||
my $herectx = get_stat_here($linenr, $cnt, $here);
|
||||
|
||||
WARN("DEFAULT_NO_BREAK",
|
||||
"switch default: should use break\n" . $herectx);
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue