I just sucessfuly build gpc-20030507 with gcc-3.3.1. Before the build I applied the following patch to gpc-20030507: --- gpc-20030507.orig/p/declarations.c Sat May 3 17:24:08 2003 +++ gpc-20030507/p/declarations.c Sun May 11 22:45:49 2003 @@ -404,7 +404,9 @@ if (block) TREE_USED (block) = 1;
+#ifndef GCC_3_3 free (level); +#endif
return block; } --- gpc-20030507.orig/p/predef.c Fri May 2 11:40:33 2003 +++ gpc-20030507/p/predef.c Fri May 16 11:13:05 2003 @@ -275,7 +275,7 @@ if (TYPE_NAME (type)) type = build_type_copy ((orig = type)); TYPE_NAME (type) = decl = build_decl (TYPE_DECL, id, type); - DECL_ORIGINAL_TYPE (decl) = orig; + DECL_ORIGINAL_TYPE (decl) = NULL_TREE; } } if (kind == bk_special_syntax || kind == bk_routine) --- gpc-20030507.orig/p/utils/mk-t-inc Sat May 17 14:27:28 2003 +++ gpc-20030507/p/utils/mk-t-inc Sat May 17 14:28:27 2003 @@ -82,6 +82,6 @@ cat "$GCCDIR/tree.def" echo 'DEFTREECODE (LAST_AND_UNUSED_C_TREE_CODE, "unused", "x", 0)' sed -e '/#else/,/#endif/d' "$GCCDIR/p/p-tree.def" -} | sed -ne '/^DEFTREECODE/{s,/*.**/,,;p;}' +} | sed -ne '/^DEFTREECODE/{s,/*.**/,,;s/["'"'"']x["'"'"'].*/"x", 0)/;p;}'
} > "$2" || { rm -f "$2"; false; }
Test results (from make pascal.check-long, passing tests omited and slightly edited to save space):
GPC-TEST-BEGIN ========================== TEST agettext2test.pas: SKIPPED: could not set locale `de_DE' TEST asmtest.pas: SKIPPED: only for IA32 TEST asmtest2.pas: SKIPPED: only for IA32 TEST asmtest3.pas: SKIPPED: only for IA32 TEST crttest.pas: SKIPPED: no curses library found TEST dario.pas: SKIPPED: only for IA32 TEST environo.pas: SKIPPED: setenv not present in libc TEST fay.pas: 1d0 < mprotect of trampoline code: Not enough space failed TEST fjf165a.pas: SKIPPED: German locale not installed TEST fjf480a.pas: SKIPPED: librx not installed TEST fjf480b.pas: SKIPPED: librx not installed TEST fjf512.pas: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/fjf512.pas: In main program: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/fjf512.pas:31: internal compiler error: Segmentation Fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. failed TEST fjf582.pas: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/fjf582.pas: In main program: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/fjf582.pas:107: warning: statement with no effect <many identical lines snipped> failed TEST gmptest.pas: SKIPPED: libgmp not installed TEST goto4.pas: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/goto4.pas: In main program: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/goto4.pas:15: internal compiler error: Segmentation Fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. failed TEST jj5.pas: SKIPPED: `attribute (stdcall)' not available TEST knuth1.pas: mprotect of trampoline code: Not enough space OK TEST knuth3.pas: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/knuth3.pas: In main program: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/knuth3.pas:14: internal compiler error: Segmentation Fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. failed TEST longr2.pas: SKIPPED: no LongReal math routines available TEST math.pas: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/math.pas: In main program: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/math.pas:102: internal compiler error: Segmentation Fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. failed TEST nonlocgoto.pas: /dom/n/k/hebisch/gcc/gpc-20030507/p/test/nonlocgoto.pas: In procedure `lvl1': /dom/n/k/hebisch/gcc/gpc-20030507/p/test/nonlocgoto.pas:20: internal compiler error: Segmentation Fault Please submit a full bug report, with preprocessed source if appropriate. See URL:http://gcc.gnu.org/bugs.html for instructions. failed TEST regextest.pas: SKIPPED: librx not installed
========================== GPC-TEST-END make[1]: Leaving directory `/dom/n/k/hebisch/gcc/gcc-sol/gcc/p/test'