Hi! When I try to build gcc from trunk with mingw-w64 I successfully build only 64bit with seh exceptions. Other builds stop on error
../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c:238:1: warning: no previous prototype for '__gcc_personality_seh0' [-Wmissing-prototypes] __gcc_personality_seh0 (PEXCEPTION_RECORD ms_exc, void *this_frame, ^ ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c: In function '__gcc_personality_seh0': ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c:242:14: error: '__gcc_personality_imp' undeclared (first use in this function) ms_disp, __gcc_personality_imp); ^ ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c:242:14: note: each undeclared identifier is reported only once for each function it appears in ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c: At top level: ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c:94:33: warning: '__gcc_personality_sj0' defined but not used [-Wunused-function] #define PERSONALITY_FUNCTION __gcc_personality_sj0 ^ ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c:120:1: note: in expansion of macro 'PERSONALITY_FUNCTION' PERSONALITY_FUNCTION (int version, ^ ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c: In function '__gcc_personality_seh0': ../../../../../../mingw-sources/gcc-trunk/libgcc/unwind-c.c:243:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ make[4]: *** [unwind-c.o] Error 1 make[4]: *** Waiting for unfinished jobs.... I find that __SEH__ defined in gcc/config/i386/cygming.h as ..... #undef TARGET_SEH #define TARGET_SEH (TARGET_64BIT_MS_ABI && flag_unwind_tables) .... #define TARGET_OS_CPP_BUILTINS() \ do \ { \ if (!TARGET_64BIT) \ builtin_define ("_X86_=1"); \ if (TARGET_SEH) \ builtin_define ("__SEH__"); ..... As I think __SEH__ is always defined that leads to error.