summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Klauser <tklauser@distanz.ch>2010-05-24 23:33:30 +0200
committerLinus Torvalds <torvalds@linux-foundation.org>2010-05-25 17:07:06 +0200
commitd4977c78e9c7dd042f96f4a21d957bc25a561333 (patch)
tree19a50489a8d974b4841edde9e92aae7ec147756a
parentcheckpatch: add check for too short Kconfig descriptions (diff)
downloadlinux-d4977c78e9c7dd042f96f4a21d957bc25a561333.tar.xz
linux-d4977c78e9c7dd042f96f4a21d957bc25a561333.zip
checkpatch: warn on declaration with storage class not at the beginning
The C99 specification states in section 6.11.5: The placement of a storage-class specifier other than at the beginning of the declaration specifiers in a declaration is an obsolescent feature. Signed-off-by: Tobias Klauser <tklauser@distanz.ch> Acked-by: Jean Delvare <khali@linux-fr.org> Cc: Andy Whitcroft <apw@shadowen.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to '')
-rwxr-xr-xscripts/checkpatch.pl5
1 files changed, 5 insertions, 0 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index de0f4672cb74..bd88f11b0953 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -2601,6 +2601,11 @@ sub process {
CHK("architecture specific defines should be avoided\n" . $herecurr);
}
+# Check that the storage class is at the beginning of a declaration
+ if ($line =~ /\b$Storage\b/ && $line !~ /^.\s*$Storage\b/) {
+ WARN("storage class should be at the beginning of the declaration\n" . $herecurr)
+ }
+
# check the location of the inline attribute, that it is between
# storage class and type.
if ($line =~ /\b$Type\s+$Inline\b/ ||