From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9951 invoked by alias); 22 Mar 2011 10:27:57 -0000 Received: (qmail 9681 invoked by uid 22791); 22 Mar 2011 10:27:50 -0000 X-SWARE-Spam-Status: No, hits=-2.8 required=5.0 tests=ALL_TRUSTED,AWL,BAYES_00,TW_CP,TW_GC,TW_JL X-Spam-Check-By: sourceware.org Received: from localhost (HELO gcc.gnu.org) (127.0.0.1) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 22 Mar 2011 10:27:39 +0000 From: "daniel.f.starke at freenet dot de" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/48233] New: [4.6] can't bootstrap with ada, java and go on mingw X-Bugzilla-Reason: CC X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: daniel.f.starke at freenet dot de X-Bugzilla-Status: UNCONFIRMED X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Changed-Fields: Message-ID: X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated Content-Type: text/plain; charset="UTF-8" MIME-Version: 1.0 Date: Tue, 22 Mar 2011 11:40:00 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2011-03/txt/msg02288.txt.bz2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48233 Summary: [4.6] can't bootstrap with ada, java and go on mingw Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned@gcc.gnu.org ReportedBy: daniel.f.starke@freenet.de Host: mingw Target: mingw Build: mingw Bootstrapping gcc 4.6 r170503 on mingw with ada, java and go enabled and the following configuration fails with several errors. configure --enable-languages=c,ada,c++,fortran,java,objc,obj-c++,go --disable-sjlj-exceptions --disable-nls --disable-shared --enable-static --enable-libgcj --enable-libgomp --enable-lto --with-dwarf2 --disable-win32-registry --enable-version-specific-runtime-libs --build=mingw32 --enable-abi=32 --enable-checking=release --prefix=mingw The first error: /usr/new-gcc/bin/./prev-gcc/xgcc -B/usr/new-gcc/bin/./prev-gcc/ -B/mingw/mingw32/bin/ -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -c -g -O2 -D__USE_MINGW_ACCESS -Wno-pedantic-ms-format -gtoggle -gnatpg -gnata -nostdinc -I- -I. -Iada -I../../gcc-4.6-20110225/gcc/ada -I../../gcc-4.6-20110225/gcc/ada/gcc-interface ada/sdefault.adb -o ada/sdefault.o gnat1.exe: warning: command line option '-Wno-pedantic-ms-format' is valid for C/C++/ObjC/ObjC++ but not for Ada [enabled by default] /usr/new-gcc/bin/./prev-gcc/xgcc -B/usr/new-gcc/bin/./prev-gcc/ -B/mingw/mingw32/bin/ -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -c -g -O2 -D__USE_MINGW_ACCESS -Wno-pedantic-ms-format -gtoggle -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -DHAVE_CONFIG_H -I. -Iada -I../../gcc-4.6-20110225/gcc -I../../gcc-4.6-20110225/gcc/ada -I../../gcc-4.6-20110225/gcc/../include -I../../gcc-4.6-20110225/gcc/../libcpp/include -I/usr/new-gcc/bin/./gmp -I/usr/new-gcc/gcc-4.6-20110225/gmp -I/usr/new-gcc/bin/./mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpc/src -I../../gcc-4.6-20110225/gcc/../libdecnumber -I../../gcc-4.6-20110225/gcc/../libdecnumber/bid -I../libdecnumber ../../gcc-4.6-20110225/gcc/ada/seh_init.c -o ada/seh_init.o ../../gcc-4.6-20110225/gcc/ada/seh_init.c: In function '__gnat_SEH_error_handler': ../../gcc-4.6-20110225/gcc/ada/seh_init.c:89:4: error: request for implicit conversion from 'void *' to 'FARPROC' not permitted in C++ [-Werror=c++-compat] ../../gcc-4.6-20110225/gcc/ada/seh_init.c:192:3: error: enum conversion in return is invalid in C++ [-Werror=c++-compat] cc1.exe: all warnings being treated as errors make[3]: *** [ada/seh_init.o] Error 1 make[3]: Leaving directory `/usr/new-gcc/bin/gcc' make[2]: *** [all-stage2-gcc] Error 2 make[2]: Leaving directory `/usr/new-gcc/bin' make[1]: *** [stage2-bubble] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 can be patched for mingw with: Index: gcc-4.6-20110225/gcc/ada/seh_init.c =================================================================== --- gcc-4.6-20110225/gcc/ada/seh_init.c (revision 170503) +++ gcc-4.6-20110225/gcc/ada/seh_init.c (working copy) @@ -86,7 +86,7 @@ */ if ((ExceptionRecord->ExceptionInformation[1] & 3) != 0 || IsBadCodePtr - ((void *)(ExceptionRecord->ExceptionInformation[1] + 4096))) + ((FARPROC)(ExceptionRecord->ExceptionInformation[1] + 4096))) { exception = &program_error; msg = "EXCEPTION_ACCESS_VIOLATION"; @@ -189,7 +189,7 @@ #endif Raise_From_Signal_Handler (exception, msg); - return 0; /* This is never reached, avoid compiler warning */ + return (EXCEPTION_DISPOSITION)0; /* This is never reached, avoid compiler warning */ } #if defined (_WIN64) The seconds error: /usr/new-gcc/bin/./prev-gcc/xgcc -B/usr/new-gcc/bin/./prev-gcc/ -B/mingw/mingw32/bin/ -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -c -g -O2 -D__USE_MINGW_ACCESS -Wno-pedantic-ms-format -gtoggle -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -DHAVE_CONFIG_H -I. -Iada -I../../gcc-4.6-20110225/gcc -I../../gcc-4.6-20110225/gcc/ada -I../../gcc-4.6-20110225/gcc/../include -I../../gcc-4.6-20110225/gcc/../libcpp/include -I/usr/new-gcc/bin/./gmp -I/usr/new-gcc/gcc-4.6-20110225/gmp -I/usr/new-gcc/bin/./mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpc/src -I../../gcc-4.6-20110225/gcc/../libdecnumber -I../../gcc-4.6-20110225/gcc/../libdecnumber/bid -I../libdecnumber \ -I. -Iada -I../../gcc-4.6-20110225/gcc -I../../gcc-4.6-20110225/gcc/ada -I../../gcc-4.6-20110225/gcc/../include -I../../gcc-4.6-20110225/gcc/../libcpp/include -I/usr/new-gcc/bin/./gmp -I/usr/new-gcc/gcc-4.6-20110225/gmp -I/usr/new-gcc/bin/./mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpc/src -I../../gcc-4.6-20110225/gcc/../libdecnumber -I../../gcc-4.6-20110225/gcc/../libdecnumber/bid -I../libdecnumber -fno-omit-frame-pointer ../../gcc-4.6-20110225/gcc/ada/tracebak.c -o ada/tracebak.o ../../gcc-4.6-20110225/gcc/ada/tracebak.c: In function '__gnat_backtrace': ../../gcc-4.6-20110225/gcc/ada/tracebak.c:480:7: error: request for implicit conversion from 'void *' to 'FARPROC' not permitted in C++ [-Werror=c++-compat] ../../gcc-4.6-20110225/gcc/ada/tracebak.c:480:7: error: request for implicit conversion from 'void *' to 'FARPROC' not permitted in C++ [-Werror=c++-compat] ../../gcc-4.6-20110225/gcc/ada/tracebak.c:481:4: error: request for implicit conversion from 'void *' to 'FARPROC' not permitted in C++ [-Werror=c++-compat] cc1.exe: all warnings being treated as errors make[3]: *** [ada/tracebak.o] Error 1 make[3]: Leaving directory `/usr/new-gcc/bin/gcc' make[2]: *** [all-stage2-gcc] Error 2 make[2]: Leaving directory `/usr/new-gcc/bin' make[1]: *** [stage2-bubble] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 can be patched for mingw with: Index: gcc-4.6-20110225/gcc/ada/tracebak.c =================================================================== --- gcc-4.6-20110225/gcc/ada/tracebak.c (revision 170503) +++ gcc-4.6-20110225/gcc/ada/tracebak.c (working copy) @@ -296,7 +296,7 @@ #if defined (__WIN32) #include -#define IS_BAD_PTR(ptr) (IsBadCodePtr((void *)ptr)) +#define IS_BAD_PTR(ptr) (IsBadCodePtr((FARPROC)ptr)) #elif defined (sun) #define IS_BAD_PTR(ptr) ((unsigned long)ptr == -1UL) #else The third error: /usr/new-gcc/bin/./prev-gcc/xgcc -B/usr/new-gcc/bin/./prev-gcc/ -B/mingw/mingw32/bin/ -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -c -g -O2 -D__USE_MINGW_ACCESS -Wno-pedantic-ms-format -gtoggle -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wstrict-prototypes -Wmissing-prototypes -Wmissing-format-attribute -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -Wold-style-definition -Wc++-compat -DHAVE_CONFIG_H \ -I. -Iada -I../../gcc-4.6-20110225/gcc -I../../gcc-4.6-20110225/gcc/ada -I../../gcc-4.6-20110225/gcc/../include -I../../gcc-4.6-20110225/gcc/../libcpp/include -I/usr/new-gcc/bin/./gmp -I/usr/new-gcc/gcc-4.6-20110225/gmp -I/usr/new-gcc/bin/./mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpc/src -I../../gcc-4.6-20110225/gcc/../libdecnumber -I../../gcc-4.6-20110225/gcc/../libdecnumber/bid -I../libdecnumber -I. -Iada -I../../gcc-4.6-20110225/gcc -I../../gcc-4.6-20110225/gcc/ada -I../../gcc-4.6-20110225/gcc/../include -I../../gcc-4.6-20110225/gcc/../libcpp/include -I/usr/new-gcc/bin/./gmp -I/usr/new-gcc/gcc-4.6-20110225/gmp -I/usr/new-gcc/bin/./mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpc/src -I../../gcc-4.6-20110225/gcc/../libdecnumber -I../../gcc-4.6-20110225/gcc/../libdecnumber/bid -I../libdecnumber ../../gcc-4.6-20110225/gcc/ada/initialize.c -o ada/initialize.o ../../gcc-4.6-20110225/gcc/ada/initialize.c: In function 'append_arg': ../../gcc-4.6-20110225/gcc/ada/initialize.c:87:17: error: request for implicit conversion from 'void *' to 'LPWSTR' not permitted in C++ [-Werror=c++-compat] ../../gcc-4.6-20110225/gcc/ada/initialize.c:94:17: error: request for implicit conversion from 'void *' to 'LPWSTR' not permitted in C++ [-Werror=c++-compat] ../../gcc-4.6-20110225/gcc/ada/initialize.c: In function '__gnat_initialize': ../../gcc-4.6-20110225/gcc/ada/initialize.c:202:9: error: request for implicit conversion from 'void *' to 'LPWSTR' not permitted in C++ [-Werror=c++-compat] cc1.exe: all warnings being treated as errors make[3]: *** [ada/initialize.o] Error 1 make[3]: Leaving directory `/usr/new-gcc/bin/gcc' make[2]: *** [all-stage2-gcc] Error 2 make[2]: Leaving directory `/usr/new-gcc/bin' make[1]: *** [stage2-bubble] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 can be patched for mingw with: Index: gcc-4.6-20110225/gcc/ada/initialize.c =================================================================== --- gcc-4.6-20110225/gcc/ada/initialize.c (revision 170503) +++ gcc-4.6-20110225/gcc/ada/initialize.c (working copy) @@ -84,14 +84,14 @@ { /* no dir prefix */ dirlen = 0; - fullvalue = xmalloc ((vallen + 1) * sizeof(TCHAR)); + fullvalue = (LPWSTR) xmalloc ((vallen + 1) * sizeof(TCHAR)); } else { /* Add dir first */ dirlen = _tcslen (dir); - fullvalue = xmalloc ((dirlen + vallen + 1) * sizeof(TCHAR)); + fullvalue = (LPWSTR) xmalloc ((dirlen + vallen + 1) * sizeof(TCHAR)); _tcscpy (fullvalue, dir); } @@ -199,7 +199,7 @@ if (ldir != NULL) { int n = ldir - wargv[k] + 1; - dir = xmalloc ((n + 1) * sizeof (TCHAR)); + dir = (LPWSTR) xmalloc ((n + 1) * sizeof (TCHAR)); _tcsncpy (dir, wargv[k], n); dir[n] = _T('\0'); } The fourth error: /usr/new-gcc/bin/./prev-gcc/g++ -B/usr/new-gcc/bin/./prev-gcc/ -B/mingw/mingw32/bin/ -nostdinc++ -B/usr/new-gcc/bin/prev-mingw32/libstdc++-v3/src/.libs -I/usr/new-gcc/bin/prev-mingw32/libstdc++-v3/include/mingw32 -I/usr/new-gcc/bin/prev-mingw32/libstdc++-v3/include -I/usr/new-gcc/gcc-4.6-20110225/libstdc++-v3/libsupc++ -L/usr/new-gcc/bin/prev-mingw32/libstdc++-v3/src/.libs -c -I ../../gcc-4.6-20110225/gcc/go -I ../../gcc-4.6-20110225/gcc/go/gofrontend -I. -Igo -I../../gcc-4.6-20110225/gcc -I../../gcc-4.6-20110225/gcc/go -I../../gcc-4.6-20110225/gcc/../include -I../../gcc-4.6-20110225/gcc/../libcpp/include -I/usr/new-gcc/bin/./gmp -I/usr/new-gcc/gcc-4.6-20110225/gmp -I/usr/new-gcc/bin/./mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpfr -I/usr/new-gcc/gcc-4.6-20110225/mpc/src -I../../gcc-4.6-20110225/gcc/../libdecnumber -I../../gcc-4.6-20110225/gcc/../libdecnumber/bid -I../libdecnumber -g -O2 -D__USE_MINGW_ACCESS -Wno-pedantic-ms-format -gtoggle -DIN_GCC -W -Wall -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -DHAVE_CONFIG_H ../../gcc-4.6-20110225/gcc/go/gofrontend/dataflow.cc -o go/dataflow.o In file included from ../../gcc-4.6-20110225/gcc/go/go-system.h:142:0, from ../../gcc-4.6-20110225/gcc/go/gofrontend/dataflow.cc:7: ../../gcc-4.6-20110225/gcc/system.h:897:0: error: "CONST_CAST2" redefined [-Werror] D:/Programme/msys/new-gcc/bin/prev-mingw32/libstdc++-v3/include/mingw32/bits/gthr-default.h:34:0: note: this is the location of the previous definition cc1plus.exe: all warnings being treated as errors make[3]: *** [go/dataflow.o] Error 1 make[3]: Leaving directory `/usr/new-gcc/bin/gcc' make[2]: *** [all-stage2-gcc] Error 2 make[2]: Leaving directory `/usr/new-gcc/bin' make[1]: *** [stage2-bubble] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 can be patched for mingw with (there might be a better way but this worked to continue at least): Index: gcc-4.6-20110225/gcc/system.h =================================================================== --- gcc-4.6-20110225/gcc/system.h (revision 170503) +++ gcc-4.6-20110225/gcc/system.h (working copy) @@ -894,9 +894,11 @@ using this macro should be viewed with extreme caution. */ #ifdef __cplusplus +#undef CONST_CAST2 #define CONST_CAST2(TOTYPE,FROMTYPE,X) (const_cast (X)) #else #if defined(__GNUC__) && GCC_VERSION > 4000 +#undef CONST_CAST2 /* GCC 4.0.x has a bug where it may ICE on this expression, so does GCC 3.4.x (PR17436). */ #define CONST_CAST2(TOTYPE,FROMTYPE,X) ((__extension__(union {FROMTYPE _q; TOTYPE _nq;})(X))._nq) The fifth error: /usr/new-gcc/bin/./gcc/xgcc -B/usr/new-gcc/bin/./gcc/ -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -c -g -O2 -W -Wall -gnatpg g-socthi.adb -o g-socthi.o g-socthi.adb:280:45: value not in range of type "Interfaces.C.unsigned" g-socthi.adb:280:45: static expression fails Constraint_Check make[4]: *** [g-socthi.o] Error 1 make[4]: Leaving directory `/usr/new-gcc/bin/gcc/ada/rts' make[3]: *** [gnatlib] Error 2 make[3]: Leaving directory `/usr/new-gcc/bin/gcc/ada' make[2]: *** [gnatlib-plain] Error 2 make[2]: Leaving directory `/usr/new-gcc/bin/mingw32/libada' make[1]: *** [all-target-libada] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 can be patched for mingw with (see also http://gcc.gnu.org/ml/gcc/2010-09/msg00228.html ): Index: gcc-4.6-20110225/gcc/ada/g-socthi-mingw.adb =================================================================== --- gcc-4.6-20110225/gcc/ada/g-socthi-mingw.adb (revision 170503) +++ gcc-4.6-20110225/gcc/ada/g-socthi-mingw.adb (working copy) @@ -277,7 +277,8 @@ use type C.size_t; Fill : constant Boolean := - (C.unsigned (Flags) and SOSC.MSG_WAITALL) /= 0; + SOSC.MSG_WAITALL /= -1 + and then (C.unsigned (Flags) and SOSC.MSG_WAITALL) /= 0; -- Is the MSG_WAITALL flag set? If so we need to fully fill all vectors Res : C.int; The sixth error: cp -p ../.././gcc/ada/rts adainclude cp: omitting directory `../.././gcc/ada/rts' make[2]: *** [gnatlib-plain] Error 1 make[2]: Leaving directory `/usr/new-gcc/bin/mingw32/libada' make[1]: *** [all-target-libada] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 discovers a general problem in almost every configure file which assumes that "cp -p" is a good alternative of "ln -s" or "ln" in general on mingw systems. As this doesn't works for directories we need "cp -pr" instead. This might affect some make files as well. E.g. Index: gcc-4.6-20110225/gcc/ada/gcc-interface/Makefile.in =================================================================== --- gcc-4.6-20110225/gcc/ada/gcc-interface/Makefile.in (revision 170503) +++ gcc-4.6-20110225/gcc/ada/gcc-interface/Makefile.in (working copy) @@ -1461,7 +1461,7 @@ soext = .exe hyphen = _ LN = cp -p -LN_S = cp -p +LN_S = cp -pr .SUFFIXES: .sym The seventh error: libtool: compile: /usr/new-gcc/bin/./gcc/xgcc -B/usr/new-gcc/bin/./gcc/ -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -DHAVE_CONFIG_H -I. -I../../../gcc-4.6-20110225/libgo -I ../../../gcc-4.6-20110225/libgo/runtime -I../../../gcc-4.6-20110225/libgo/../libffi/include -I../libffi/include -fexceptions -fplan9-extensions -Wall -Wextra -Wwrite-strings -Wcast-qual -Werror -minline-all-stringops -I ../../../gcc-4.6-20110225/libgo/../gcc -I ../../gcc/include -g -O2 -MT go-go.lo -MD -MP -MF .deps/go-go.Tpo -c ../../../gcc-4.6-20110225/libgo/runtime/go-go.c -o go-go.o ../../../gcc-4.6-20110225/libgo/runtime/go-go.c: In function 'stop_for_gc': ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:295:3: error: implicit declaration of function 'sigsuspend' [-Werror=implicit-function-declaration] ../../../gcc-4.6-20110225/libgo/runtime/go-go.c: In function 'runtime_stoptheworld': ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:379:29: error: 'SIGRTMIN' undeclared (first use in this function) ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:379:29: note: each undeclared identifier is reported only once for each function it appears in ../../../gcc-4.6-20110225/libgo/runtime/go-go.c: In function 'runtime_starttheworld': ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:560:29: error: 'SIGRTMIN' undeclared (first use in this function) ../../../gcc-4.6-20110225/libgo/runtime/go-go.c: In function '__go_gc_goroutine_init': ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:581:20: error: storage size of 'act' isn't known ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:603:3: error: implicit declaration of function 'sigemptyset' [-Werror=implicit-function-declaration] ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:605:3: error: implicit declaration of function 'sigprocmask' [-Werror=implicit-function-declaration] ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:612:3: error: implicit declaration of function 'sigdelset' [-Werror=implicit-function-declaration] ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:612:25: error: 'SIGRTMIN' undeclared (first use in this function) ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:614:3: error: implicit declaration of function 'sigaddset' [-Werror=implicit-function-declaration] ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:635:3: error: implicit declaration of function 'sigaction' [-Werror=implicit-function-declaration] ../../../gcc-4.6-20110225/libgo/runtime/go-go.c:581:20: error: unused variable 'act' [-Werror=unused-variable] cc1.exe: all warnings being treated as errors make[4]: *** [go-go.lo] Error 1 make[4]: Leaving directory `/usr/new-gcc/bin/mingw32/libgo' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/usr/new-gcc/bin/mingw32/libgo' make[2]: *** [all] Error 2 make[2]: Leaving directory `/usr/new-gcc/bin/mingw32/libgo' make[1]: *** [all-target-libgo] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 seems to need some more rework for mingw. From this point I turned off the go language support to continue. The eighth error: libtool: compile: /usr/new-gcc/bin/./gcc/xgcc -shared-libgcc -B/usr/new-gcc/bin/./gcc -nostdinc++ -L/usr/new-gcc/bin/mingw32/libstdc++-v3/src -L/usr/new-gcc/bin/mingw32/libstdc++-v3/src/.libs -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -DHAVE_CONFIG_H -I. -I../../../gcc-4.6-20110225/libjava -I./include -I./gcj -I../../../gcc-4.6-20110225/libjava -Iinclude -I../../../gcc-4.6-20110225/libjava/include -I../../../gcc-4.6-20110225/libjava/classpath/include -Iclasspath/include -I../../../gcc-4.6-20110225/libjava/classpath/native/fdlibm -I../../../gcc-4.6-20110225/libjava/../boehm-gc/include -I../boehm-gc/include -I../../../gcc-4.6-20110225/libjava/libltdl -I../../../gcc-4.6-20110225/libjava/libltdl -I../../../gcc-4.6-20110225/libjava/.././libjava/../gcc -I../../../gcc-4.6-20110225/libjava/../zlib -I../../../gcc-4.6-20110225/libjava/../libffi/include -I../libffi/include -fno-rtti -fnon-call-exceptions -mthreads -fdollars-in-identifiers -Wswitch-enum -D_FILE_OFFSET_BITS=64 -ffloat-store -fomit-frame-pointer -Usun -fno-omit-frame-pointer -Wextra -Wall -D_GNU_SOURCE -DPREFIX=\"/mingw\" -DTOOLEXECLIBDIR=\"/mingw/lib/gcc/mingw32/4.6.0\" -DJAVA_HOME=\"/mingw\" -DBOOT_CLASS_PATH=\"/mingw/share/java/libgcj-4.6.0.jar\" -DJAVA_EXT_DIRS=\"/mingw/share/java/ext\" -DGCJ_ENDORSED_DIRS=\"/mingw/share/java/gcj-endorsed\" -DGCJ_VERSIONED_LIBDIR=\"/mingw/lib/gcj-4.6.0-12\" "-DPATH_SEPARATOR=\";\"" -DECJ_JAR_FILE=\"\" -DLIBGCJ_DEFAULT_DATABASE=\"/mingw/lib/gcj-4.6.0-12/classmap.db\" -DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL=\"gcj-4.6.0-12/classmap.db\" -fno-omit-frame-pointer -g -O2 -MT prims.lo -MD -MP -MF .deps/prims.Tpo -c ../../../gcc-4.6-20110225/libjava/prims.cc -o prims.o ../../../gcc-4.6-20110225/libjava/prims.cc:178:1: warning: unused parameter '_dummy' [-Wunused-parameter] ../../../gcc-4.6-20110225/libjava/prims.cc:189:1: warning: unused parameter '_dummy' [-Wunused-parameter] ../../../gcc-4.6-20110225/libjava/prims.cc:178:1: warning: 'void catch_segv(int)' defined but not used [-Wunused-function] ../../../gcc-4.6-20110225/libjava/prims.cc:189:1: warning: 'void catch_fpe(int)' defined but not used [-Wunused-function] depbase=`echo jni.lo | sed 's|[^/]*$|.deps/&|;s|\.lo$||'`;\ /bin/sh ./libtool --tag=CXX --mode=compile /usr/new-gcc/bin/./gcc/xgcc -shared-libgcc -B/usr/new-gcc/bin/./gcc -nostdinc++ -L/usr/new-gcc/bin/mingw32/libstdc++-v3/src -L/usr/new-gcc/bin/mingw32/libstdc++-v3/src/.libs -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -DHAVE_CONFIG_H -I. -I../../../gcc-4.6-20110225/libjava -I./include -I./gcj -I../../../gcc-4.6-20110225/libjava -Iinclude -I../../../gcc-4.6-20110225/libjava/include -I../../../gcc-4.6-20110225/libjava/classpath/include -Iclasspath/include -I../../../gcc-4.6-20110225/libjava/classpath/native/fdlibm -I../../../gcc-4.6-20110225/libjava/../boehm-gc/include -I../boehm-gc/include -I../../../gcc-4.6-20110225/libjava/libltdl -I../../../gcc-4.6-20110225/libjava/libltdl -I../../../gcc-4.6-20110225/libjava/.././libjava/../gcc -I../../../gcc-4.6-20110225/libjava/../zlib -I../../../gcc-4.6-20110225/libjava/../libffi/include -I../libffi/include -fno-rtti -fnon-call-exceptions -mthreads -fdollars-in-identifiers -Wswitch-enum -D_FILE_OFFSET_BITS=64 -ffloat-store -fomit-frame-pointer -Usun -fno-omit-frame-pointer -Wextra -Wall -D_GNU_SOURCE -DPREFIX="\"/mingw\"" -DTOOLEXECLIBDIR="\"/mingw/lib/gcc/mingw32/4.6.0\"" -DJAVA_HOME="\"/mingw\"" -DBOOT_CLASS_PATH="\"/mingw/share/java/libgcj-4.6.0.jar\"" -DJAVA_EXT_DIRS="\"/mingw/share/java/ext\"" -DGCJ_ENDORSED_DIRS="\"/mingw/share/java/gcj-endorsed\"" -DGCJ_VERSIONED_LIBDIR="\"/mingw/lib/gcj-4.6.0-12\"" -DPATH_SEPARATOR="\";\"" -DECJ_JAR_FILE="\"\"" -DLIBGCJ_DEFAULT_DATABASE="\"/mingw/lib/gcj-4.6.0-12/classmap.db\"" -DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL="\"gcj-4.6.0-12/classmap.db\"" -g -O2 -MT jni.lo -MD -MP -MF $depbase.Tpo -c -o jni.lo ../../../gcc-4.6-20110225/libjava/jni.cc &&\ mv -f $depbase.Tpo $depbase.Plo libtool: compile: /usr/new-gcc/bin/./gcc/xgcc -shared-libgcc -B/usr/new-gcc/bin/./gcc -nostdinc++ -L/usr/new-gcc/bin/mingw32/libstdc++-v3/src -L/usr/new-gcc/bin/mingw32/libstdc++-v3/src/.libs -L/usr/new-gcc/bin/mingw32/winsup/mingw -L/usr/new-gcc/bin/mingw32/winsup/w32api/lib -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/mingw/include -isystem /usr/new-gcc/gcc-4.6-20110225/winsup/w32api/include -B/mingw/mingw32/bin/ -B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem /mingw/mingw32/sys-include -DHAVE_CONFIG_H -I. -I../../../gcc-4.6-20110225/libjava -I./include -I./gcj -I../../../gcc-4.6-20110225/libjava -Iinclude -I../../../gcc-4.6-20110225/libjava/include -I../../../gcc-4.6-20110225/libjava/classpath/include -Iclasspath/include -I../../../gcc-4.6-20110225/libjava/classpath/native/fdlibm -I../../../gcc-4.6-20110225/libjava/../boehm-gc/include -I../boehm-gc/include -I../../../gcc-4.6-20110225/libjava/libltdl -I../../../gcc-4.6-20110225/libjava/libltdl -I../../../gcc-4.6-20110225/libjava/.././libjava/../gcc -I../../../gcc-4.6-20110225/libjava/../zlib -I../../../gcc-4.6-20110225/libjava/../libffi/include -I../libffi/include -fno-rtti -fnon-call-exceptions -mthreads -fdollars-in-identifiers -Wswitch-enum -D_FILE_OFFSET_BITS=64 -ffloat-store -fomit-frame-pointer -Usun -fno-omit-frame-pointer -Wextra -Wall -D_GNU_SOURCE -DPREFIX=\"/mingw\" -DTOOLEXECLIBDIR=\"/mingw/lib/gcc/mingw32/4.6.0\" -DJAVA_HOME=\"/mingw\" -DBOOT_CLASS_PATH=\"/mingw/share/java/libgcj-4.6.0.jar\" -DJAVA_EXT_DIRS=\"/mingw/share/java/ext\" -DGCJ_ENDORSED_DIRS=\"/mingw/share/java/gcj-endorsed\" -DGCJ_VERSIONED_LIBDIR=\"/mingw/lib/gcj-4.6.0-12\" "-DPATH_SEPARATOR=\";\"" -DECJ_JAR_FILE=\"\" -DLIBGCJ_DEFAULT_DATABASE=\"/mingw/lib/gcj-4.6.0-12/classmap.db\" -DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL=\"gcj-4.6.0-12/classmap.db\" -g -O2 -MT jni.lo -MD -MP -MF .deps/jni.Tpo -c ../../../gcc-4.6-20110225/libjava/jni.cc -o jni.o ../../../gcc-4.6-20110225/libjava/jni.cc: In function 'java::lang::Object* _Jv_JNI_ToReflectedField(JNIEnv*, jclass, jfieldID, jboolean)': ../../../gcc-4.6-20110225/libjava/jni.cc:1663:14: error: new declaration 'java::lang::Object* _Jv_JNI_ToReflectedField(JNIEnv*, jclass, jfieldID, jboolean)' ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Field.h:93:19: error: ambiguates old declaration 'java::lang::Object* _Jv_JNI_ToReflectedField(_Jv_JNIEnv*, jclass, jfieldID, jboolean)' ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Field.h:83:105: error: 'java::lang::Class* java::lang::reflect::Field::declaringClass' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1669:14: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Field.h:85:8: error: 'jint java::lang::reflect::Field::offset' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1670:14: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/Class.h:675:14: error: '_Jv_Field* java::lang::Class::fields' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1670:55: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Field.h:84:26: error: 'java::lang::String* java::lang::reflect::Field::name' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1671:14: error: within this context ../../../gcc-4.6-20110225/libjava/jni.cc: In function 'java::lang::Object* _Jv_JNI_ToReflectedMethod(JNIEnv*, jclass, jmethodID, jboolean)': ../../../gcc-4.6-20110225/libjava/jni.cc:1694:15: error: new declaration 'java::lang::Object* _Jv_JNI_ToReflectedMethod(JNIEnv*, jclass, jmethodID, jboolean)' ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Method.h:78:19: error: ambiguates old declaration 'java::lang::Object* _Jv_JNI_ToReflectedMethod(_Jv_JNIEnv*, jclass, jmethodID, jboolean)' ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Constructor.h:19:3: error: 'java::lang::reflect::Constructor::Constructor()' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1706:41: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Constructor.h:56:8: error: 'jint java::lang::reflect::Constructor::offset' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1707:10: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/Class.h:666:17: error: '_Jv_Method* java::lang::Class::::methods' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1707:50: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Constructor.h:53:105: error: 'java::lang::Class* java::lang::reflect::Constructor::declaringClass' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1708:10: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Method.h:20:3: error: 'java::lang::reflect::Method::Method()' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1713:31: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Method.h:73:8: error: 'jint java::lang::reflect::Method::offset' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1714:10: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/Class.h:666:17: error: '_Jv_Method* java::lang::Class::::methods' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1714:50: error: within this context ../../../gcc-4.6-20110225/libjava/java/lang/reflect/Method.h:64:105: error: 'java::lang::Class* java::lang::reflect::Method::declaringClass' is private ../../../gcc-4.6-20110225/libjava/jni.cc:1715:10: error: within this context ../../../gcc-4.6-20110225/libjava/jni.cc: At global scope: ../../../gcc-4.6-20110225/libjava/jni.cc:2891:1: error: invalid conversion from 'java::lang::Object* (*)(_Jv_JNIEnv*, jclass, jmethodID, jboolean)' to 'java::lang::Object* (*)(JNIEnv*, jclass, jmethodID, jboolean)' [-fpermissive] ../../../gcc-4.6-20110225/libjava/jni.cc:2891:1: error: invalid conversion from 'java::lang::Object* (*)(_Jv_JNIEnv*, jclass, jfieldID, jboolean)' to 'java::lang::Object* (*)(JNIEnv*, jclass, jfieldID, jboolean)' [-fpermissive] make[3]: *** [jni.lo] Error 1 make[3]: Leaving directory `/usr/new-gcc/bin/mingw32/libjava' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/usr/new-gcc/bin/mingw32/libjava' make[1]: *** [all-target-libjava] Error 2 make[1]: Leaving directory `/usr/new-gcc/bin' make: *** [bootstrap] Error 2 seems to need some more work as well. Final bootstrap worked with c,ada,c++,fortran,objc,obj-c++ after applying the listed patches.