Subject: sys/null.h
To: None <tech-userlevel@NetBSD.org>
From: Roland Illig <roland.illig@gmx.de>
List: tech-userlevel
Date: 04/13/2005 18:09:32
Hi all,

To quote from the ISO C99 standard:

7.17#3:
The macros are
          NULL
which expands to an implementation-defined null pointer constant

Currently, <sys/null.h> defines NULL to be 0.

Now my questions are:

* What happens on I32LP64 systems?
   fprintf(stderr, "%#p %#p\n", NULL, NULL, 1, 2, 3, 4);
   I would expect the answer to not be "0x0 0x0".

* Why don't we always #define NULL ((void *) 0) ?
   (We don't have to be pre-ANSI compatible anyway.)

Roland