checkpatch.pl: check for function declarations without arguments
Functions like this one are evil: void foo() { ... } Because these functions allow variadic arguments without checking the arguments at all. Original patch by Richard Weinberger. Signed-off-by: Joe Perches <joe@perches.com> Cc: Richard Weinberger <richard@nod.at> Cc: Borislav Petkov <bp@alien8.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
committed by
Linus Torvalds
parent
a3978a5194
commit
b36190c5f8
@@ -2665,6 +2665,15 @@ sub process {
|
|||||||
$herecurr);
|
$herecurr);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# check for function declarations without arguments like "int foo()"
|
||||||
|
if ($line =~ /(\b$Type\s+$Ident)\s*\(\s*\)/) {
|
||||||
|
if (ERROR("FUNCTION_WITHOUT_ARGS",
|
||||||
|
"Bad function definition - $1() should probably be $1(void)\n" . $herecurr) &&
|
||||||
|
$fix) {
|
||||||
|
$fixed[$linenr - 1] =~ s/(\b($Type)\s+($Ident))\s*\(\s*\)/$2 $3(void)/;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
# check for uses of DEFINE_PCI_DEVICE_TABLE
|
# check for uses of DEFINE_PCI_DEVICE_TABLE
|
||||||
if ($line =~ /\bDEFINE_PCI_DEVICE_TABLE\s*\(\s*(\w+)\s*\)\s*=/) {
|
if ($line =~ /\bDEFINE_PCI_DEVICE_TABLE\s*\(\s*(\w+)\s*\)\s*=/) {
|
||||||
if (WARN("DEFINE_PCI_DEVICE_TABLE",
|
if (WARN("DEFINE_PCI_DEVICE_TABLE",
|
||||||
|
Reference in New Issue
Block a user