summaryrefslogtreecommitdiff
path: root/tools/checkpatch.pl
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2018-08-10 20:45:41 +0200
committerDavid Lamparter <equinox@opensourcerouting.org>2018-08-10 20:46:35 +0200
commit7aea4b816790cae57547f3e3d8e0185de69973ce (patch)
tree0bb4fccde3a729a902f9fe4da0659a5eee2cf767 /tools/checkpatch.pl
parent0a62b873922e437d0644e5a298d1076ebbde388b (diff)
tools/checkpatch: fix some bogus macro warnings
checkpatch was throwing an error for "#define FOO , bar" Signed-off-by: David Lamparter <equinox@diac24.net>
Diffstat (limited to 'tools/checkpatch.pl')
-rwxr-xr-xtools/checkpatch.pl8
1 files changed, 6 insertions, 2 deletions
diff --git a/tools/checkpatch.pl b/tools/checkpatch.pl
index c1fab1029a..55b3e1e564 100755
--- a/tools/checkpatch.pl
+++ b/tools/checkpatch.pl
@@ -4181,7 +4181,9 @@ sub process {
} elsif ($op eq ',') {
my $rtrim_before = 0;
my $space_after = 0;
- if ($ctx =~ /Wx./) {
+ if ($line=~/\#\s*define/) {
+ # ignore , spacing in macros
+ } elsif ($ctx =~ /Wx./) {
if (ERROR("SPACING",
"space prohibited before that '$op' $at\n" . $hereptr)) {
$line_fixed = 1;
@@ -4847,6 +4849,7 @@ sub process {
my $ctx = '';
my $has_flow_statement = 0;
my $has_arg_concat = 0;
+ my $complex = 0;
($dstat, $dcond, $ln, $cnt, $off) =
ctx_statement_block($linenr, $realcnt, 0);
$ctx = $dstat;
@@ -4865,6 +4868,7 @@ sub process {
$define_args = substr($define_args, 1, length($define_args) - 2);
$define_args =~ s/\s*//g;
@def_args = split(",", $define_args);
+ $complex = 1;
}
$dstat =~ s/$;//g;
@@ -4932,7 +4936,7 @@ sub process {
} elsif ($dstat =~ /;/) {
ERROR("MULTISTATEMENT_MACRO_USE_DO_WHILE",
"Macros with multiple statements should be enclosed in a do - while loop\n" . "$herectx");
- } else {
+ } elsif ($complex) {
ERROR("COMPLEX_MACRO",
"Macros with complex values should be enclosed in parentheses\n" . "$herectx");
}