Commit 22fd2d3e authored by Stefani Seibold's avatar Stefani Seibold Committed by Linus Torvalds

checkpatch.pl: add union and struct to the exceptions list

Here is a small code snippet, which will be complained about by
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 and safe, so checkpatch.pl should accept this.  It
should be also true for struct defined in a macro.

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: default avatarStefani Seibold <stefani@seibold.net>
Cc: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 52131292
...@@ -2361,6 +2361,8 @@ sub process { ...@@ -2361,6 +2361,8 @@ sub process {
DECLARE_PER_CPU| DECLARE_PER_CPU|
DEFINE_PER_CPU| DEFINE_PER_CPU|
__typeof__\(| __typeof__\(|
union|
struct|
\.$Ident\s*=\s*| \.$Ident\s*=\s*|
^\"|\"$ ^\"|\"$
}x; }x;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment