Commit d4977c78 authored by Tobias Klauser's avatar Tobias Klauser Committed by Linus Torvalds

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: default avatarTobias Klauser <tklauser@distanz.ch>
Acked-by: default avatarJean Delvare <khali@linux-fr.org>
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 3354957a
...@@ -2601,6 +2601,11 @@ sub process { ...@@ -2601,6 +2601,11 @@ sub process {
CHK("architecture specific defines should be avoided\n" . $herecurr); 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 # check the location of the inline attribute, that it is between
# storage class and type. # storage class and type.
if ($line =~ /\b$Type\s+$Inline\b/ || if ($line =~ /\b$Type\s+$Inline\b/ ||
......
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