This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Bootstrap failure in stage1 fix-header, !HAVE_DESIGNATED_INITIALIZERS


Recent CVS dies in stage1 whenever one uses cc to bootstrap on
mips-sgi-irix6.2 and sparc-sun-solaris2.7.  Fix-header gobbles up
memory until it runs out and xmalloc fails.

The trigger appears to be the HAVE_DESIGNATED_INITIALIZERS else-clause
since if I force the compiler to take the else path, it always fails
even with gcc.  The following patch is enough to trigger the problem
on the above two platforms with gcc for stage1, and as well on
x86-linux if you make stmp-fixproto.

If you need more help reproducing the problem, let me know.

Would you please take a look?

		Thanks,
		--Kaveh

diff -rup orig/egcs-CVS20000819/gcc/cpphash.h egcs-CVS20000819/gcc/cpphash.h
--- orig/egcs-CVS20000819/gcc/cpphash.h	Sat Aug 19 09:29:45 2000
+++ egcs-CVS20000819/gcc/cpphash.h	Sat Aug 19 21:41:19 2000
@@ -168,7 +168,7 @@ struct spec_nodes
 /* These tables are constant if they can be initialized at compile time,
    which is the case if cpp was compiled with GCC >=2.7, or another
    compiler that supports C99.  */
-#if HAVE_DESIGNATED_INITIALIZERS
+#if HAVE_DESIGNATED_INITIALIZERS && 0
 extern const unsigned char _cpp_IStable[UCHAR_MAX + 1];
 extern const unsigned char _cpp_trigraph_map[UCHAR_MAX + 1];
 #else
diff -rup orig/egcs-CVS20000819/gcc/cppinit.c egcs-CVS20000819/gcc/cppinit.c
--- orig/egcs-CVS20000819/gcc/cppinit.c	Sat Aug 19 09:29:45 2000
+++ egcs-CVS20000819/gcc/cppinit.c	Sat Aug 19 21:41:11 2000
@@ -122,7 +122,7 @@ enum { QUOTE = 0, BRACKET, SYSTEM, AFTER
 /* If we have designated initializers (GCC >2.7) these tables can be
    initialized, constant data.  Otherwise, they have to be filled in at
    runtime.  */
-#if HAVE_DESIGNATED_INITIALIZERS
+#if HAVE_DESIGNATED_INITIALIZERS && 0
 
 #define init_IStable()  /* nothing */
 #define ISTABLE __extension__ const U_CHAR _cpp_IStable[UCHAR_MAX + 1] = {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]