checkpatch: add check for space after struct, union, and enum
Andy Whitcroft [Tue, 26 Oct 2010 21:23:14 +0000 (14:23 -0700)]
Add spacing checks for struct, union, and enum definitions.  Check the
spacing after type and before the equals (=) and open brace ({).

Based on a patch by Joe Perches.

Cc: Joe Perches <joe@perches.com>
Signed-off-by: Andy Whitcroft <apw@canonical.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

scripts/checkpatch.pl

index bcdb54b..983ac18 100755 (executable)
@@ -1905,6 +1905,16 @@ sub process {
                        ERROR("open brace '{' following function declarations go on the next line\n" . $herecurr);
                }
 
+# missing space after union or struct definition
+               if ($rawline =~ /^\+\s*(union|struct)\s+$Ident[=\{]/) {
+                   WARN("Missing space after struct or union definition\n" . $herecurr);
+               }
+
+# missing space after enum definition
+               if ($rawline =~ /^\+\s*enum\{/) {
+                   WARN("Missing space after enum definition\n" . $herecurr);
+               }
+
 # open braces for enum, union and struct go on the same line.
                if ($line =~ /^.\s*{/ &&
                    $prevline =~ /^.\s*(?:typedef\s+)?(enum|union|struct)(?:\s+$Ident)?\s*$/) {