Browse Source

do not export kernel's NULL #define to userspace

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 leak kernel's NULL to userspace and
override what the compiler provides.

Signed-off-by: Luboš Luňák <l.lunak@suse.cz>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Lubos Lunak 13 years ago
parent
commit
2084c24a81
1 changed files with 2 additions and 6 deletions
  1. 2 6
      include/linux/stddef.h

+ 2 - 6
include/linux/stddef.h

@@ -3,14 +3,10 @@
 
 
 #include <linux/compiler.h>
 #include <linux/compiler.h>
 
 
+#ifdef __KERNEL__
+
 #undef NULL
 #undef NULL
-#if defined(__cplusplus)
-#define NULL 0
-#else
 #define NULL ((void *)0)
 #define NULL ((void *)0)
-#endif
-
-#ifdef __KERNEL__
 
 
 enum {
 enum {
 	false	= 0,
 	false	= 0,