diff --git a/WINGs/memory.c b/WINGs/memory.c index 7f4f0a85..81476e45 100644 --- a/WINGs/memory.c +++ b/WINGs/memory.c @@ -30,6 +30,10 @@ #include #include +#ifdef HAVE_STDNORETURN +#include +#endif + #ifdef USE_BOEHM_GC #ifndef GC_DEBUG #define GC_DEBUG @@ -54,7 +58,11 @@ static void defaultHandler(int bla) static waborthandler *aborthandler = defaultHandler; -#define wAbort(a) (*aborthandler)(a) +static inline noreturn void wAbort(int bla) +{ + (*aborthandler)(bla); + exit(-1); +} waborthandler *wsetabort(waborthandler * handler) {