Re: [PATCH] Use NULL instead of integer 0 in security/selinux/

From: Bill Davidsen
Date: Mon Jul 12 2004 - 17:06:05 EST


Eric W. Biederman wrote:

Is doing memset(&(struct with_embeded_pointers), 0, sizeof(struct))
also wrong?

I don't see that 0 is WRONG. I do agree that ``((void *)0)'' is
slightly more typesafe than ``0'', but since we don't have a lot of
(void *) pointers in the kernel that is still the WRONG pointer type.

I do see that NULL has superior readability and maintainability and so
should be encouraged by Documentation/CodingStyle.

The B and K&R roots of a simple single type language are what give C
most of it's simplicity flexibility and power. Please don't be so
eager to throw those out.

You want to be so typesafe it sounds like you want to recode the
kernel in Pascal. You've written sparse, so it should be just a little
more work to write a Pascal backend. After that the kernel will be so
typesafe the compiler won't let us poor programmers get it wrong.

You say that as if it were a bad thing...

I don't have a current C standard handy, but I believe there's a requirement that otherwise uninitialized static pointers be initialized to NULL even if that isn't "all bits off."

--
-bill davidsen (davidsen@xxxxxxx)
"The secret to procrastination is to put things off until the
last possible moment - but no longer" -me
-
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/