[PATCH][RESEND] do not redefine userspace's NULL #define

From: Lubos Lunak
Date: Fri Apr 13 2012 - 15:24:20 EST


GCC's NULL is actually __null, which allows detecting some questionable
NULL usage and warn about it. Moreover each platform/compiler should have
its own stddef.h anyway (which is different from linux/stddef.h).
So there's no good reason to override what the compiler provides.
Keep the #define conditionally, in order to keep the headers self-contained.

Signed-off-by: LuboÅ LuÅÃk <l.lunak@xxxxxxx>
---

There have been no further comments after this last version, and I do not see
how this change should affect anything in either kernel builds or userspace
builds, except for fixing the issue of overriding the proper NULL definition,
so I consider this the proper and safe fix.

include/linux/stddef.h | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/include/linux/stddef.h b/include/linux/stddef.h
index 6a40c76..ce225a9 100644
--- a/include/linux/stddef.h
+++ b/include/linux/stddef.h
@@ -3,12 +3,13 @@

#include <linux/compiler.h>

-#undef NULL
+#ifndef NULL
#if defined(__cplusplus)
#define NULL 0
#else
#define NULL ((void *)0)
#endif
+#endif

#ifdef __KERNEL__

--
1.7.7
--
Lubos Lunak
l.lunak@xxxxxxx
--
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/