2014-07-22 19:23:14

by Joe Perches

[permalink] [raw]
Subject: Re: checkpatch.pl false positive


On Tue, 2014-07-22 at 17:30 +0000, Hartley Sweeten wrote:
> Joe,
>
> I think this is a false positive, at least the check message appears
> incorrect:
>
> CHECK: No space is necessary after a cast
> #66: FILE: arch/arm/mach-ep93xx/include/mach/platform.h:66:
> +static inline int crunch_init(void) { return 0; }

Yeah, it's a false positive introduced by -next
commit 89da401f6cff ("checkpatch: improve "no space after cast" test")

Try this?
---
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index 2258497..644c2d5 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2418,7 +2418,7 @@ sub process {
}
}

- if ($line =~ /^\+.*\(\s*$Type\s*\)[ \t]+(?!$Assignment|$Arithmetic)/) {
+ if ($line =~ /^\+.*\(\s*$Type\s*\)[ \t]+(?!$Assignment|$Arithmetic|{)/) {
if (CHK("SPACING",
"No space is necessary after a cast\n" . $herecurr) &&
$fix) {


2014-07-22 19:46:25

by Hartley Sweeten

[permalink] [raw]
Subject: RE: checkpatch.pl false positive

On Tuesday, July 22, 2014 12:23 PM, Joe Perches wrote:
> On Tue, 2014-07-22 at 17:30 +0000, Hartley Sweeten wrote:
>> Joe,
>>
>> I think this is a false positive, at least the check message appears
>> incorrect:
>>
>> CHECK: No space is necessary after a cast
>> #66: FILE: arch/arm/mach-ep93xx/include/mach/platform.h:66:
>> +static inline int crunch_init(void) { return 0; }
>
> Yeah, it's a false positive introduced by -next
> commit 89da401f6cff ("checkpatch: improve "no space after cast" test")
>
> Try this?
> ---
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index 2258497..644c2d5 100755
> --- a/scripts/checkpatch.pl
>+++ b/scripts/checkpatch.pl
> @ @ -2418,7 +2418,7 @@ sub process {
> }
> }
>
> - if ($line =~ /^\+.*\(\s*$Type\s*\)[ \t]+(?!$Assignment|$Arithmetic)/) {
> + if ($line =~ /^\+.*\(\s*$Type\s*\)[ \t]+(?!$Assignment|$Arithmetic|{)/) {
> if (CHK("SPACING",
> "No space is necessary after a cast\n" . $herecurr) &&
> $fix) {

That fixed it.

Thanks,
Hartley

2014-07-23 04:31:23

by Joe Perches

[permalink] [raw]
Subject: [PATCH] checkpatch: Fix false positives for --strict "space after cast" test

commit 89da401f6cff ("checkpatch: improve "no space after cast" test")
in -next improved the cast test for non pointer types, but also
introduced false positives for some types of static inlines.

Add a test for an open brace to the exclusions to avoid these
false positives.

Reported-by: Hartley Sweeten <[email protected]>
Signed-off-by: Joe Perches <[email protected]>
---
scripts/checkpatch.pl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index dc72a9b..7dcfc75 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2418,7 +2418,7 @@ sub process {
}
}

- if ($line =~ /^\+.*\(\s*$Type\s*\)[ \t]+(?!$Assignment|$Arithmetic)/) {
+ if ($line =~ /^\+.*\(\s*$Type\s*\)[ \t]+(?!$Assignment|$Arithmetic|{)/) {
if (CHK("SPACING",
"No space is necessary after a cast\n" . $herecurr) &&
$fix) {