--- config/i386/freebsd-elf.h.orig Fri Dec 5 04:15:34 1997 +++ config/i386/freebsd-elf.h Wed Mar 11 03:05:09 1998 @@ -140,10 +140,20 @@ #define WCHAR_TYPE_SIZE BITS_PER_WORD #undef CPP_PREDEFINES -#define CPP_PREDEFINES "-Dunix -D__ELF__ -D__FreeBSD__=2 -Asystem(FreeBSD)" +#define CPP_PREDEFINES "-Dunix -D__ELF__ -D__FreeBSD__ -Asystem(FreeBSD)" #undef CPP_SPEC #define CPP_SPEC "%(cpp_cpu) %[cpp_cpu] %{fPIC:-D__PIC__ -D__pic__} %{fpic:-D__PIC__ -D__pic__} %{posix:-D_POSIX_SOURCE}" + + +/* need "-fsjlj-exceptions" (use setjmp/longjmp for exceptions) the default. + The standard exception implementation reliably + dumps core under FreeBSD. Users can put "-fno-sjlj-exceptions" on + the command line if they really want to override the new default. */ +#ifdef CC1PLUS_SPEC +#error "CC1PLUS_SPEC needs ``-fsjlj-exceptions'', but is already defined." +#endif +#define CC1PLUS_SPEC "-fsjlj-exceptions" #undef LIB_SPEC #if 1