This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: killing STDC_0_IN_SYSTEM_HEADERS
- To: Zack Weinberg <zack at rabi dot columbia dot edu>
- Subject: Re: killing STDC_0_IN_SYSTEM_HEADERS
- From: Jeffrey A Law <law at cygnus dot com>
- Date: Thu, 06 Jan 2000 16:02:38 -0700
- cc: Alexandre Oliva <oliva at lsd dot ic dot unicamp dot br>, Brian Ford <ford at vss dot fsi dot com>, Joern Rennecke <amylaar at cygnus dot co dot uk>, gcc at gcc dot gnu dot org, zack at blastula dot phys dot columbia dot edu, eggert at twinsun dot com
- Reply-To: law at cygnus dot com
In message <200001062209.RAA23081@blastula.phys.columbia.edu>you write:
> >It seems that my information is just outdated. gcc 2.7.* would
> >present problems for almost any network-related application, because
> >lots of headers were `fixinclude'd, and they ended up incompatible
> >with those that did not have to be fixed, and were picked from
> >/usr/include, regardless of OS version.
>
> Unfortunately, if we were to fixinclude for the "__STDC__ == 0" problem, we
> would go right back to touching many headers. On a 2.6 system:
I don't necessarily mind touching headers, but we really want to avoid
*copying* headers if we can. Ie if we can do this with a wrapper, then we
ought to be in good shape.
While we generally do not expect toolchains to work across major revisions
of a vendor OS (solaris2.5 vs solaris2.6 vs solaris2.7), we do expect it
to work within a minor revision (solaris2.5, solaris2.5.1, etc). The
more header files we copy, the less likely we are to be able to run solaris2.x
tools on solaris 2.x.y systems, which is bad.
I would recommend that you find the original discussion that led to this
__STDC__ == 0 hack. I'd bet searching for Paul Eggert would be a good start
since I think he played a significant role in this work.
jeff