Re: checkpatch.pl: WxV false positive

From: Vivien Didelot
Date: Mon Jan 30 2012 - 11:39:41 EST


Hi Andy,

On Mon, 30 Jan 2012 11:18:17 +0000,
Andy Whitcroft <apw@xxxxxxxxxxxxx> wrote:

> On Sun, Jan 22, 2012 at 09:48:34PM -0500, Vivien Didelot wrote:
>
> > In the code below, checkpatch thinks that the asterisk is a
> > multiplication, so it is complaining about coding style.
> >
> > ERROR: need consistent spacing around '*' (ctx:WxV)
> > #304: FILE: x86/platform/ts5500/ts5500_adc.c:304:
> > + .attrs = (struct attribute *[]) {
>
> C types are the pits. How does the version below handle for you:
>
> http://people.canonical.com/~apw/checkpatch/checkpatch-next.pl
>

This version works for me!

> Relative patch below.
>
> -apw
>
> commit f8a73045dcaac70f9be770cca06f21c762a13878
> Author: Andy Whitcroft <apw@xxxxxxxxxxxxx>
> Date: Sun Jan 29 21:46:04 2012 +0000
>
> checkpatch: add [] to type extensions
>
> Add [] to a type extensions. Fixes false positives on:
>
> .attrs = (struct attribute *[]) {
>
> Signed-off-by: Andy Whitcroft <apw@xxxxxxxxxxxxx>
>
> diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
> index d1dd544..64de1bd 100755
> --- a/scripts/checkpatch.pl
> +++ b/scripts/checkpatch.pl
> @@ -323,7 +323,7 @@ sub build_types {
> }x;
> $Type = qr{
> $NonptrType
> - (?:[\s\*]+\s*const|[\s\*]+|(?:\s*\[\s*\])+)?
> +
> (?:(?:\s|\*|\[\])+\s*const|(?:\s|\*|\[\])+|(?:\s*\[\s*\])+)?
> (?:\s+$Inline|\s+$Modifier)* }x;
> $Declare = qr{(?:$Storage\s+)?$Type};

Thanks,
Vivien

--
Vivien Didelot
Savoir-faire Linux Inc.
Tel: (514) 276-5468 #149
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/