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

From: Valdis . Kletnieks
Date: Thu Mar 22 2012 - 12:49:55 EST


On Thu, 22 Mar 2012 17:22:33 +0100, Jiri Slaby said:
> That explanation is not fully correct. C99 explicitly says (6.7.5.3.14):
> An identifier list declares only the identifiers of the parameters of
> the function. An empty list in a function declarator that is part of a
> definition of that function specifies that the function has no
> parameters. The empty list in a function declarator that is not part of
> a definition of that function specifies that no information about the
> number or types of the parameters is supplied.
>
> So what you are trying to force here holds only for (forward)
> declarations. Not for functions with definitions (bodies). Is checkpatch
> capable to differ between those?

The fact that 'int foo() { /*whatever*/ }' with an empty parameter list
is *legal* doesn't mean that we can't collectively put our foot down and
say "This is too ugly to live in our source tree".

Is there any *legitimate* use of an empty parameter list in the kernel tree?

Attachment: pgp00000.pgp
Description: PGP signature