Results for 2.97 20010212 (experimental) testsuite on i686-pc -cyg win

Billinghurst, David (CRTS) David.Billinghurst@riotinto.com
Tue Feb 27 15:05:00 GMT 2001


I have a solution to this problem.  It may even be correct.

The cause of the problem is using "-idirafter /usr/include" rather than
"-isystem /usr/include".  This is fixed with the following patch, which
bootstraps on the gcc-3.0 branch and eliminates the cpp testsuite failures.

--- gcc/config/i386/cygwin.h.orig	Tue Feb  6 21:11:08 2001
+++ gcc/config/i386/cygwin.h	Tue Feb 27 20:08:33 2001
@@ -88,7 +88,7 @@
 #define MINGW_LIBS "-L" CYGWIN_CROSS_DIR "/lib/mingw"
 #define MINGW_INCLUDES "-I" CYGWIN_CROSS_DIR "/include/mingw"
 #else
-#define CYGWIN_INCLUDES "-isystem /usr/local/include -idirafter
/usr/include"
+#define CYGWIN_INCLUDES "-isystem /usr/local/include -isystem /usr/include"
 #define CYGWIN_W32API "-I/usr/include/w32api"
 #define CYGWIN_LIB "/usr/lib"
 #define MINGW_LIBS "-L/usr/local/lib/mingw -L/usr/lib/mingw"

I don't understand why -idirafter was used.  There are only a few
occurrences of it in the source tree. If it wrong for cygwin it may be wrong
elsewhere as well.

Your thoughts?



> -----Original Message-----
> From:	Billinghurst, David (CRTS) 
> Sent:	Thursday, 15 February 2001 22:49
> To:	'Neil Booth'
> Subject:	RE: Results for 2.97 20010212 (experimental) testsuite on
> i686-pc -cyg win
> 
> Here is:
>   output from gcc -v
>   the cpp part of the specs file
> 
> ******************************
> 
> $ /usr/local/obj/gcc/gcc/xgcc -B/usr/local/obj/gcc/gcc/
> /usr/local/src/gcc/gcc/
> testsuite/gcc.dg/cpp/19990407-1.c -ansi -pedantic-errors -v
> Reading specs from /usr/local/obj/gcc/gcc/specs
> Configured with: /usr/local/src/gcc/configure
> gcc version 2.97 20010212 (experimental)
>  /usr/local/obj/gcc/gcc/cc1.exe -lang-c -std=c89 -v -iprefix
> /usr/local/obj/gcc/gcc/../lib/gcc-lib/i686-pc-cygwin/2.97/ -isystem
> /usr/local/obj/gcc/gcc/include -D__GNUC__=2 -D__GNUC_MINOR__=97
> -D__GNUC_PATCHLEVEL__=0 -D_X86_=1 -Asystem=winnt -D__STDC_HOSTED__=1
> -pedantic-errors -Acpu=i386 -Amachine=i386 -D__i386 -D__i386__
> -D__tune_i686__ -D__tune_pentiumpro__
> -D__stdcall=__attribute__((__stdcall__))
> -D__cdecl=__attribute__((__cdecl__)) -D__declspec(x)=__attribute__((x))
> -D__i386__ -D__i386 -D__CYGWIN32__ -D__CYGWIN__ -Dunix -D__unix__ -D__unix
> -isystem /usr/local/include -idirafter /usr/include -DWIN32 -D_WIN32
> -D__WIN32 -D__WIN32__ -DWINNT -I/usr/include/w32api
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c -quiet -dumpbase
> 19990407-1.c -ansi -pedantic-errors -ansi -version -o
> /cygdrive/c/TEMP/cc23c2mH.s
> GNU CPP version 2.97 20010212 (experimental) (cpplib) (80386, BSD syntax)
> GNU CPP version 2.97 20010212 (experimental) (cpplib) (80386, BSD syntax)
> GNU C version 2.97 20010212 (experimental) (i686-pc-cygwin)
>         compiled by GNU C version 2.97 20010212 (experimental).
> ignoring nonexistent directory
> "/usr/local/obj/gcc/lib/gcc-lib/i686-pc-cygwin/2.97/include"
> #include "..." search starts here:
> #include <...> search starts here:
>  /usr/include/w32api
>  /usr/local/obj/gcc/gcc/include
>  /usr/local/include
>  /usr/local/lib/gcc-lib/i686-pc-cygwin/2.97/include
>  /usr/include
> End of search list.
> In file included from /usr/include/time.h:32,
>                  from /usr/include/sys/reent.h:14,
>                  from /usr/include/string.h:15,
>                  from
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c:6
> :
> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 
> 
> ********************  from specs
> 
> *cpp:
> %(cpp_cpu) %{posix:-D_POSIX_SOURCE}
> -D__stdcall=__attribute__((__stdcall__))
> -D__cdecl=__attribute__((__cdecl__))
> %{!ansi:-D_stdcall=__attribute__((__stdcall__))
> -D_cdecl=__attribute__((__cdecl__))}   -D__declspec(x)=__attribute__((x))
> -D__i386__ -D__i386   %{!mno-cygwin:-D__CYGWIN32__ -D__CYGWIN__ -Dunix
> -D__unix__ -D__unix     -isystem /usr/local/include -idirafter
> /usr/include}   %{mno-win32: %{mno-cygwin: %emno-cygwin and mno-win32 are
> not compatible}}   %{mno-cygwin:-DWIN32 -D_WIN32 -D__WIN32 -D__WIN32__
> -DWINNT -D__MSVCRT__     -D__MINGW32__=0.3 %{mthreads:-D_MT} -isystem
> /usr/local/include/mingw -idirafter
> /usr/include/mingw-I/usr/include/w32api    -iwithprefixbefore
> ../../../../mingw/include/g++-3     -iwithprefixbefore
> ../../../../mingw/include     -iwithprefixbefore
> ../../../../mingw32/include/g++-3     -iwithprefixbefore
> ../../../../mingw32/include }    %{!mno-win32:-DWIN32 -D_WIN32 -D__WIN32
> -D__WIN32__ -DWINNT -I/usr/include/w32api}
> 
> 
> 	-----Original Message-----
> 	From:	'Neil Booth' [SMTP:neil@daikokuya.demon.co.uk]
> 	Sent:	Thursday, February 15, 2001 9:31 AM
> 	To:	Billinghurst, David (CRTS)
> 	Cc:	DJ Delorie
> 	Subject:	Re: Results for 2.97 20010212 (experimental)
> testsuite on i686-pc -cyg win
> 
> 	DJ / David,
> 
> 	Is there any chance of one of you investigating why the Cygwin setup
> 	thinks that /usr/include/sys/types.h is not a system header?  This
> 	looks like some kind of configuration issue.
> 
> 	The code that issues the error in c-decl.c checks for being in a
> 	system header, so the problem is that the preprocessor does not
> 	think it is in a system header.
> 
> 	Thanks,
> 
> 	Neil.
> 
> 	Billinghurst, David (CRTS) wrote:-
> 	> Neil,
> 	> 
> 	> All failures due to the same warning.
> 	> 
> 	> Offending lines of /usr/include/sys/types.h are
> 	> 
> 	> typedef long long int64_t;
> 	> typedef unsigned long long u_int64_t;
> 	> 
> 	> +++++++++++++++++++++++++++++++++++++++++
> 	> (Mr) David Billinghurst
> 	> Comalco Research Centre
> 	> PO Box 316, Thomastown, Vic, Australia, 3074
> 	> Phone:	+61 3 9469 0642
> 	> FAX:	+61 3 9462 2700
> 	> Email:	David.Billinghurst@riotinto.com
> 	> 
> 	> Executing on host: /usr/local/obj/gcc/gcc/xgcc
> -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c    -ansi
> 	> -pedantic-errors    -o ./a.out    (timeout = 300)
> 	> spawn /usr/local/obj/gcc/gcc/xgcc -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c -ansi
> 	> -pedantic-errors -o ./a.out 
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> compiler exited with status 1
> 	> output is:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> 
> 	> FAIL: gcc.dg/cpp/19990407-1.c (test for excess errors)
> 	> Excess errors:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990407-1.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> 
> 	> WARNING: gcc.dg/cpp/19990407-1.c compilation failed to produce
> executable
> 	> 
> 	> 
> 	> Executing on host: /usr/local/obj/gcc/gcc/xgcc
> -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990703-1.c    -ansi
> 	> -pedantic-errors    -o ./a.out    (timeout = 300)
> 	> spawn /usr/local/obj/gcc/gcc/xgcc -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990703-1.c -ansi
> 	> -pedantic-errors -o ./a.out 
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990703-1.c:7:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990703-1.c:17:15:
> warning:
> 	> pasting "0" and "-" does not give a valid preprocessing token
> 	> compiler exited with status 1
> 	> output is:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990703-1.c:7:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990703-1.c:17:15:
> warning:
> 	> pasting "0" and "-" does not give a valid preprocessing token
> 	> 
> 	> PASS: gcc.dg/cpp/19990703-1.c  (test for warnings, line 17)
> 	> FAIL: gcc.dg/cpp/19990703-1.c (test for excess errors)
> 	> Excess errors:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/19990703-1.c:7:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> 
> 	> WARNING: gcc.dg/cpp/19990703-1.c compilation failed to produce
> executable
> 	> 
> 	> Executing on host: /usr/local/obj/gcc/gcc/xgcc
> -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp1.c    -ansi
> 	> -pedantic-errors    -o ./a.out    (timeout = 300)
> 	> spawn /usr/local/obj/gcc/gcc/xgcc -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp1.c -ansi
> -pedantic-errors
> 	> -o ./a.out 
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp1.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> compiler exited with status 1
> 	> output is:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp1.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> 
> 	> FAIL: gcc.dg/cpp/strp1.c (test for excess errors)
> 	> Excess errors:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/string.h:15,
> 	>                  from
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp1.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> 
> 	> WARNING: gcc.dg/cpp/strp1.c compilation failed to produce
> executable
> 	> 
> 	> 
> 	> 
> 	> Executing on host: /usr/local/obj/gcc/gcc/xgcc
> -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp2.c    -ansi
> 	> -pedantic-errors    -o ./a.out    (timeout = 300)
> 	> spawn /usr/local/obj/gcc/gcc/xgcc -B/usr/local/obj/gcc/gcc/
> 	> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp2.c -ansi
> -pedantic-errors
> 	> -o ./a.out 
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/stdlib.h:19,
> 	>                  from
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp2.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> compiler exited with status 1
> 	> output is:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/stdlib.h:19,
> 	>                  from
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp2.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> 
> 	> FAIL: gcc.dg/cpp/strp2.c (test for excess errors)
> 	> Excess errors:
> 	> In file included from /usr/include/time.h:32,
> 	>                  from /usr/include/sys/reent.h:14,
> 	>                  from /usr/include/stdlib.h:19,
> 	>                  from
> /usr/local/src/gcc/gcc/testsuite/gcc.dg/cpp/strp2.c:6:
> 	> /usr/include/sys/types.h:110: ISO C89 does not support `long long'
> 	> /usr/include/sys/types.h:111: ISO C89 does not support `long long'
> 	> 
> 	> WARNING: gcc.dg/cpp/strp2.c compilation failed to produce
> executable
> 	> 
> 	> 
> 	> 
> 	> 
> 	> > -----Original Message-----
> 	> > From:	Neil Booth [SMTP:neil@daikokuya.demon.co.uk]
> 	> > Sent:	Wednesday, 14 February 2001 9:43
> 	> > To:	Billinghurst, David (CRTS)
> 	> > Subject:	Re: Results for 2.97 20010212 (experimental)
> testsuite on
> 	> > i686-pc-cyg win
> 	> > 
> 	> > Billinghurst, David (CRTS) wrote:-
> 	> > 
> 	> > > FAIL: gcc.dg/cpp/19990407-1.c (test for excess errors)
> 	> > > FAIL: gcc.dg/cpp/19990703-1.c (test for excess errors)
> 	> > > FAIL: gcc.dg/cpp/20000625-2.c (test for excess errors)
> 	> > > FAIL: gcc.dg/cpp/strp1.c (test for excess errors)
> 	> > > FAIL: gcc.dg/cpp/strp2.c (test for excess errors)
> 	> > 
> 	> > Hi David,
> 	> > 
> 	> > Could you pass me this part of the log?
> 	> > 
> 	> > Thanks,
> 	> > 
> 	> > Neil.



More information about the Gcc-bugs mailing list