summaryrefslogtreecommitdiff
path: root/scripts/checkpatch.pl
diff options
context:
space:
mode:
authorJoe Perches <joe@perches.com>2010-10-26 14:23:20 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2010-10-26 16:52:21 -0700
commitcb710eca6820493add0ddd3d7e8e3ee53f2b6e57 (patch)
tree752ca452a0d2fa3f9cb085c4f4e050a5e657f5f5 /scripts/checkpatch.pl
parent267ad8f42644c2fa4ff6c2e7596d2b02c7397c85 (diff)
downloadlwn-cb710eca6820493add0ddd3d7e8e3ee53f2b6e57.tar.gz
lwn-cb710eca6820493add0ddd3d7e8e3ee53f2b6e57.zip
scripts/checkpatch.pl: add warnings for static char that could be static const char
Add warnings for possible missing const uses of static char foo[] = "bar" that could be static const char foo[] = "bar" and static const char *foo[] = {"bar", "baz"} that could be static const char * const foo[] = {"bar", "baz"} Signed-off-by: Joe Perches <joe@perches.com> Cc: Mike Frysinger <vapier.adi@gmail.com> Cc: Andy Whitcroft <apw@canonical.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'scripts/checkpatch.pl')
-rwxr-xr-xscripts/checkpatch.pl12
1 files changed, 12 insertions, 0 deletions
diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index c1e7fb3eab44..2ec5fc6a4046 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -1869,6 +1869,18 @@ sub process {
$herecurr);
}
+# check for static const char * arrays.
+ if ($line =~ /\bstatic\s+const\s+char\s*\*\s*(\w+)\s*\[\s*\]\s*=\s*/) {
+ WARN("static const char * array should probably be static const char * const\n" .
+ $herecurr);
+ }
+
+# check for static char foo[] = "bar" declarations.
+ if ($line =~ /\bstatic\s+char\s+(\w+)\s*\[\s*\]\s*=\s*"/) {
+ WARN("static char array declaration should probably be static const char\n" .
+ $herecurr);
+ }
+
# check for new typedefs, only function parameters and sparse annotations
# make sense.
if ($line =~ /\btypedef\s/ &&