This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: __STDC__ == 0 in System Headers on Solaris?
- From: Eric Botcazou <ebotcazou at libertysurf dot fr>
- To: <jeffery at cavcom dot com>
- Cc: <gcc at gcc dot gnu dot org>
- Date: Fri, 28 Mar 2003 17:29:12 +0100
- Subject: Re: __STDC__ == 0 in System Headers on Solaris?
- References: <008901c2f47e$e1a838b0$7a588642@YODA>
> When I dealt with this is past versions, I noticed a note in the GCC
> documentation stating that on systems with a convention of __STDC__=0,
> GCC would use a 0 value when scanning system header files. Indeed, this
> feature seems to be enabled in the Solaris 2.x support
> (STDC_0_IN_SYSTEM_HEADERS, or some such define). Yet, this doesn't seem
> to be having any effect - __STDC__ is still 1.
Note that __STDC__ == 0 only when processing system header files; it will
expand to 1 when processing user files.
I don't see the bug on the Solaris 9 box I have access to:
#include <sys/types.h>
int main(void)
{
longlong_t i;
return i._l[0];
}
poog% gcc -o test test.c
test.c: In function `main':
test.c:6: request for member `_l' in something not a structure or union
poog% gcc -D_NO_LONGLONG -o test test.c
poog%
--
Eric Botcazou