Redefine __nonnull so that test for incorrect parameters in the libc code itself...
authorUlrich Drepper <drepper@redhat.com>
Thu, 10 May 2007 20:15:11 +0000 (20:15 +0000)
committerUlrich Drepper <drepper@redhat.com>
Thu, 10 May 2007 20:15:11 +0000 (20:15 +0000)
include/sys/cdefs.h

index 8ba9804..cd0750b 100644 (file)
@@ -2,6 +2,12 @@
 
 #include <misc/sys/cdefs.h>
 
+/* The compiler will optimize based on the knowledge the parameter is
+   not NULL.  This will omit tests.  A robust implementation cannot allow
+   this so when compiling glibc itself we ignore this attribute.  */
+#undef __nonnull
+#define __nonnull(params)
+
 extern void __chk_fail (void) __attribute__ ((__noreturn__));
 libc_hidden_proto (__chk_fail)
 rtld_hidden_proto (__chk_fail)