Re: [BUG ?] checkpatch.pl rejects as error something I think it oughtto be allow

From: Corey Ashford
Date: Mon Feb 21 2011 - 18:49:53 EST


On 02/21/2011 03:40 PM, Andy Whitcroft wrote:
On Mon, Feb 21, 2011 at 03:28:02PM -0800, Corey Ashford wrote:
Hi,

I have a piece of code where I have two constants defined as follows:

static const unsigned long polling_interval_sec = 1;
static const unsigned long polling_interval_ns = 0;

Now, it's clear to me that I want these two values to have the
keywords const and static. I could use a #define here, but const
static seemed cleaner to me.

When I run checkpatch.pl across this code, I get this error:

ERROR: do not initialise statics to 0 or NULL.

I think the problem here is that another case is needed for "static
const" that does allow 0.

What do you think?

Thanks for your consideration,

The warning is intended to tell you that the = 0 is unnecessary. Any
static is 0 by default I believe. At some point the addition of the 0
would move the value from the bss to the data segment bloating the code.
This may no longer be true.

OK, but that means I'd have to have a declaration like this, which looks quite odd to me:

static const poll_interval_ns; /* = 0 */

I don't think that is preferable to this:

static const poll_interval_ns = 0;

- Corey
--
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/