[PATCH 1/1] checkpatch.pl: thou shalt not use () or (...) in function declarations

From: Phil Carmody
Date: Thu Mar 22 2012 - 11:30:32 EST


After HPA's wonderful lkml post, referenced, it seems worth trying to
detect this robomatically.

Signed-off-by: Phil Carmody <ext-phil.2.carmody@xxxxxxxxx>
---
scripts/checkpatch.pl | 4 ++++
1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/scripts/checkpatch.pl b/scripts/checkpatch.pl
index a3b9782..3993011 100755
--- a/scripts/checkpatch.pl
+++ b/scripts/checkpatch.pl
@@ -1881,6 +1881,10 @@ sub process {
substr($ctx, 0, $name_len + 1, '');
$ctx =~ s/\)[^\)]*$//;

+ if ($ctx =~ /^\s*(?:\.\.\.)?\s*$/) {
+ # HPA explains why: http://lwn.net/Articles/487493/
+ ERROR("(...) and () are not sufficiently informative function declarations\n$hereline");
+ }
for my $arg (split(/\s*,\s*/, $ctx)) {
if ($arg =~ /^(?:const\s+)?($Ident)(?:\s+$Sparse)*\s*\**\s*(:?\b$Ident)?$/s || $arg =~ /^($Ident)$/s) {

--
1.7.2.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/