The newest m4 snapshots don't pass all their tests on Solaris 11.3/sparc64: stackovf.test fails.
This happens also when GNU libsigsegv is installed and --with-libsigsegv-prefix is given, because the c-stack.m4 autoconf test now insists in ignoring GNU libsigsegv when it thinks that the Solaris heuristic will work. But the Solaris heuristic does not work reliably: It works in the configure test and in the test-c-stack* unit test. But it does not work in m4. I've added a couple of printfs and get this output: Checking ../../checks/stackovf.test Stack soft limit set to 300K Failure - m4 aborted unexpectedly Output from m4: cannot_be_stack_overflow1 = 0 cannot_be_stack_overflow2 = 0 pc=0x10001de44, sp+2047=0xffffffff7ffb5ee0, faulting_address=0x100204000, stack_base=0xffffffff7ffb5000, stack_size=0x4b000 segv_handler code=1 fault=100204000 base=ffffffff7ffb5000 size=0x4b000 page=0x2000 signo=11 m4: internal error detected; please report this bug to <bug...@gnu.org>: Segmentation fault It's easy to reproduce: In a build tree, just run $ echo 'define(a,a(a))a' | src/m Clearly, the faulting_address variable's value is bogus. There is an alternative heuristic implemented in the Solaris 11 function 'stack_violation' [1]. But this function does not help: m4 still crashes. I won't spend any more time on fixing this Solaris-only code — when we have code that works on all platforms in GNU libsigsegv. Bruno [1] https://docs.oracle.com/cd/E26502_01/html/E29034/stack-violation-3c.html