[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1263332672.4373.12.camel@wall-e>
Date: Tue, 12 Jan 2010 22:44:32 +0100
From: Stefani Seibold <stefani@...bold.net>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: linux-kernel <linux-kernel@...r.kernel.org>, apw@...onical.com,
jschopp@...tin.ibm.com, davej@...hat.com
Subject: Re: [PATCH] checkpatch.pl: add union and struct to the exceptions
list
Am Montag, den 11.01.2010, 14:42 -0800 schrieb Andrew Morton:
> On Wed, 06 Jan 2010 17:46:00 +0100
> Stefani Seibold <stefani@...bold.net> wrote:
>
> > This patch add the struct and union keywords to the exceptions list of
> > the checkpatch.pl script, to prevent error message "Macros with multiple
> > statements should be enclosed in a do - while loop". Otherwise it is not
> > possible to build a struct or union with a macro.
> >
> > Signed-off-by: Stefani Seibold <stefani@...bold.net>
> > ---
> > checkpatch.pl | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > --- linux-2.6.33-rc2.orig/scripts/checkpatch.pl 2009-12-03 04:51:21.000000000 +0100
> > +++ linux-2.6.33-rc2.new/scripts/checkpatch.pl 2010-01-06 17:35:29.747634447 +0100
> > @@ -2348,6 +2348,8 @@ sub process {
> > DECLARE_PER_CPU|
> > DEFINE_PER_CPU|
> > __typeof__\(|
> > + union|
> > + struct|
> > \.$Ident\s*=\s*|
> > ^\"|\"$
> > }x;
>
> hm. Perhaps it would help if you could provide a snippet of code which
> triggers the incorrect warning?
>
Here is a small code snippet, which will be complained by the
checkpatch.pl:
#define __STRUCT_KFIFO_COMMON(recsize, ptrtype) \
union { \
struct { \
unsigned int in; \
unsigned int out; \
}; \
char rectype[recsize]; \
ptrtype *ptr; \
const ptrtype *ptr_const; \
};
This construct is legal an save, so checkpatch.pl should accept this. It
should be also true for struct defined in a macro.
Stefani
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists