GCC headers and DJGPP port
Eli Zaretskii
eliz@delorie.com
Wed Jul 19 23:43:00 GMT 2000
> From: Mike Stump <mrs@windriver.com>
> Date: Wed, 19 Jul 2000 14:38:04 -0700 (PDT)
>
> > Date: Wed, 19 Jul 2000 14:26:25 -0400 (EDT)
> > From: Eli Zaretskii <eliz@delorie.com>
> > To: martin@loewis.home.cs.tu-berlin.de
>
> > Seriously, though: the conclusion was that we didn't like the
> > redefinition of NULL in C++ headers (see my other message for the
> > problems this causes). But we couldn't understand why does the C++
> > compiler redefines NULL in its headers, so we couldn't find a
> > solution that would satisfy us all and avoid breaking the C++
> > compiler at the same time. Perhaps you could help.
>
> Sure, change all definitions of NULL to more closely match gcc's
> notion of null, and you're done.
I'm not sure what GCC's notion of NULL are you talking about. We
cannot use __null in C headers unconditionally, because it will cause
unresolved externals in C programs, right? Use of __null conditioned
on __cplusplus is questionable, since libc.a is not compiled with that
definition of NULL. Am I missing something?
> Sprinkle in #undef NULL if you get redefinition errors.
We did use #undef to solve the immediate problem, but it looked like a
brute-force and potentially dangerous (for C++ programs) solution. I
wonder if there's a better one.
More information about the Gcc
mailing list