lkml.org 
[lkml]   [2010]   [Jan]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] checkpatch.pl: add union and struct to the exceptions list
From
Date
Am Montag, den 11.01.2010, 14:42 -0800 schrieb Andrew Morton:
> On Wed, 06 Jan 2010 17:46:00 +0100
> Stefani Seibold <stefani@seibold.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@seibold.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




\
 
 \ /
  Last update: 2010-01-12 22:47    [W:0.159 / U:0.348 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site