The discussion on 2008-11-05 led to an agreement how to best fix this, but no one actually committed the fix. Now done as follows:
2008-12-22 Ingo Weinhold <ingo_weinh...@gmx.de> (tiny change) Eric Blake <e...@byu.net> Paolo Bonzini <bonz...@gnu.org> Bruno Haible <br...@clisp.org> Make c-stack work on Haiku. * lib/c-stack.c (SA_ONSTACK): Define fallback. (c_stack_action): Use SA_ONSTACK flag. --- lib/c-stack.c.orig 2008-12-23 00:53:04.000000000 +0100 +++ lib/c-stack.c 2008-12-23 00:38:43.000000000 +0100 @@ -82,6 +82,9 @@ # define SIGACTION_WORKS 1 #else # define SIGACTION_WORKS 0 +# ifndef SA_ONSTACK +# define SA_ONSTACK 0 +# endif #endif extern char *program_name; @@ -317,7 +320,7 @@ act.sa_flags = SA_NODEFER | SA_ONSTACK | SA_RESETHAND | SA_SIGINFO; act.sa_sigaction = segv_handler; # else - act.sa_flags = SA_NODEFER | SA_RESETHAND; + act.sa_flags = SA_NODEFER | SA_ONSTACK | SA_RESETHAND; act.sa_handler = die; # endif