This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Results for egcs-2.92.16 19981024 (gcc2 ss-980609 experimental) testsuite on i586-pc-linux-gnu, and possible fix
- To: egcs at cygnus dot com
- Subject: Results for egcs-2.92.16 19981024 (gcc2 ss-980609 experimental) testsuite on i586-pc-linux-gnu, and possible fix
- From: Nix <nix-egcs at esperi dot demon dot co dot uk>
- Date: Sat, 24 Oct 1998 23:51:05 +0100 (BST)
- Cc: rearnsha at arm dot com
Sources: - egcs mainline from CVS last updated at Sat Oct 24 20:57:21 1998
- libg++-2.8.1.2
Patches:
Environment: - GNU binutils 2.9.1.0.15
- dejagnu-980528
- gperf-2.7 with gperf-2.7-19981006 patch for -F
- Linux stable kernel 2.0.35 (compiled by gcc-2.7.2.3)
- glibc 2.0.6 (compiled by egcs-1.0.2)
Remarks: See below.
configure flags: --with-gnu-ld --with-gnu-as --prefix=/usr/packages.bin/egcs/snapshot --enable-shared --disable-haifa
BOOT_CC: egcs-2.91.57
BOOT_CFLAGS: -W -Wall -O2 -funroll-all-loops -g -march=pentium -mcpu=pentium -fomit-frame-pointer -D__NO_MATH_INLINES
CFLAGS: -W -Wall -O2 -march=pentium -mcpu=pentium -fomit-frame-pointer -g -D__NO_MATH_INLINES
CXXFLAGS: -W -Wall -O2 -march=pentium -mcpu=pentium -fomit-frame-pointer -g -D__NO_MATH_INLINES
Bootstrap failed; last twenty lines are:
../../egcs/gcc/move-if-change tmp-genrtl.h genrtl.h
../../egcs/gcc/move-if-change tmp-genrtl.c genrtl.c
touch s-genrtl
gcc -c -DIN_GCC -g -W -Wall -DHAVE_CONFIG_H -I. -I../../egcs/gcc -I../../egcs/gcc/config -I../../egcs/gcc/../include ../../egcs/gcc/c-lex.c
../../egcs/gcc/c-lex.c: In function `yylex':
../../egcs/gcc/c-lex.c:1526: warning: implicit declaration of function `set_float_handler'
gcc -c -DIN_GCC -g -W -Wall -DHAVE_CONFIG_H -I. -I../../egcs/gcc -I../../egcs/gcc/config -I../../egcs/gcc/../include ../../egcs/gcc/c-pragma.c
gcc -c -DIN_GCC -g -W -Wall -DHAVE_CONFIG_H -I. -I../../egcs/gcc -I../../egcs/gcc/config -I../../egcs/gcc/../include ../../egcs/gcc/c-decl.c
../../egcs/gcc/c-decl.c: In function `grokfield':
../../egcs/gcc/c-decl.c:5721: warning: unused parameter `filename'
../../egcs/gcc/c-decl.c:5722: warning: unused parameter `line'
gcc -c -DIN_GCC -g -W -Wall -DHAVE_CONFIG_H -I. -I../../egcs/gcc -I../../egcs/gcc/config -I../../egcs/gcc/../include ../../egcs/gcc/gencodes.c
gcc -c -DIN_GCC -g -W -Wall -DHAVE_CONFIG_H -I. -I../../egcs/gcc -I../../egcs/gcc/config -I../../egcs/gcc/../include ../../egcs/gcc/rtl.c
../../egcs/gcc/rtl.c:125: conflicting types for `mode_mask_array'
../../egcs/gcc/machmode.h:199: previous declaration of `mode_mask_array'
make[2]: *** [rtl.o] Error 1
make[2]: Leaving directory `/usr/packages/egcs/egcs/snapshot/i586-pc-linux-gnu/gcc'
make[1]: *** [bootstrap-lean] Error 2
make[1]: Leaving directory `/usr/packages/egcs/egcs/snapshot/i586-pc-linux-gnu/gcc'
make: *** [bootstrap-lean] Error 2
Clearly, rtl.c and machmode.h have a conflict. It seems to be Richard
Earnshaw's patch to both rtl.c and machmode.h of the 23rd:
* machmode.h (mode_mask_array): No longer const.
* rtl.c (init_rtl): Fully initialize it if EXTRA_CC_MODES defined.
The problem is that mode_mask_array in machmode.h is merely an extern,
and the interned copy (if you see what I mean) in rtl.c was not
changed.
This trivial patch seems to fix it: (at least, the result builds
without exploding)
--- rtl.c.orig Sat Oct 24 23:40:41 1998
+++ rtl.c Sat Oct 24 23:41:00 1998
@@ -122,7 +122,7 @@
/* Indexed by machine mode, gives mask of significant bits in mode. */
-const unsigned HOST_WIDE_INT mode_mask_array[(int) MAX_MACHINE_MODE] = {
+unsigned HOST_WIDE_INT mode_mask_array[(int) MAX_MACHINE_MODE] = {
#include "machmode.def"
};
(No changelog with this one, I'm not sure if committers provide the
changelogs or the plebes do...)
[Cc:ed to Richard Earnshaw so I can be shot down if I'm talking
nonsense]