GCC trunk bootstrap failure on i686-w64-mingw32

LIU Hao lh_mouse@126.com
Wed Oct 26 10:52:14 GMT 2022


Greetings,

Since at least a week ago, GCC trunk fails to bootstrap with a lot such errors during stage1:

   ```
 
D:\lh_mouse\GitHub\MINGW-packages\mingw-w64-gcc\src\build-MINGW32\i686-w64-mingw32\libstdc++-v3\src\c++11/../../../../../gcc/libstdc++-v3/src/c++11/functexcept.cc:74: 
undefined reference to `_Unwind_SjLj_Register'
C:\MSYS2\mingw32\i686-w64-mingw32\bin\ld.exe: 
D:\lh_mouse\GitHub\MINGW-packages\mingw-w64-gcc\src\build-MINGW32\i686-w64-mingw32\libstdc++-v3\src\c++11/../../../../../gcc/libstdc++-v3/src/c++11/functexcept.cc:74: 
undefined reference to `_Unwind_SjLj_Resume'
   ```


It seems that SJLJ exception is enabled (it shouldn't have been) for xgcc, but not for libgcc:

   ```
   build-MINGW32/gcc $ ./xgcc -E -xc /dev/null -B $(pwd) -dM | fgrep SJLJ
   #define __USING_SJLJ_EXCEPTIONS__ 1
   ```


There is clearly `--disable-sjlj-exceptions`:

   ```
   $ ../gcc/configure --prefix=/mingw32 --with-local-prefix=/mingw32/local --build=i686-w64-mingw32 
--host=i686-w64-mingw32 --target=i686-w64-mingw32 --with-native-system-header-dir=/mingw32/include 
--libexecdir=/mingw32/lib --enable-bootstrap --enable-checking=release --with-arch=i686 
--with-tune=generic --enable-languages=c,lto,c++,fortran --enable-shared --enable-static 
--enable-libatomic --enable-threads=mcf --enable-graphite --enable-fully-dynamic-string 
--enable-libstdcxx-filesystem-ts --enable-libstdcxx-time --disable-libstdcxx-pch --enable-lto 
--enable-libgomp --disable-multilib --disable-rpath --disable-win32-registry --disable-nls 
--disable-werror --disable-symvers --with-libiconv --with-system-zlib --with-gmp=/mingw32 
--with-mpfr=/mingw32 --with-mpc=/mingw32 --with-isl=/mingw32 --with-pkgversion=GCC with MCF thread 
model, built by LH_Mouse --with-bugurl=https://github.com/lhmouse/MINGW-packages/issues 
--with-gnu-as --with-gnu-ld --disable-libstdcxx-debug --disable-sjlj-exceptions --with-dwarf2 
--with-boot-ldflags="-static-libstdc++" --with-stage1-ldflags="-static-libstdc++"
   ```


GCC 12 release branch doesn't suffer from this issue. So what could be causing it? Thanks in advance.


-- 
Best regards,
LIU Hao
-------------- next part --------------
A non-text attachment was scrubbed...
Name: OpenPGP_signature
Type: application/pgp-signature
Size: 840 bytes
Desc: OpenPGP digital signature
URL: <https://gcc.gnu.org/pipermail/gcc/attachments/20221026/82515325/attachment.sig>


More information about the Gcc mailing list