exit(3) needs it, and without it the checks fail on macOS. This causes zsh to hang because it thinks those things are broken and tries to employ unnecessary (and in this case incorrect) workarounds. --- configure.ac | 2 ++ 1 file changed, 2 insertions(+) diff --git a/configure.ac b/configure.ac index 995f010b9..906c174ed 100644 --- a/configure.ac +++ b/configure.ac @@ -2264,6 +2264,7 @@ zsh_cv_sys_killesrch, [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <unistd.h> #include <signal.h> +#include <stdlib.h> #include <errno.h> main() { @@ -2289,6 +2290,7 @@ if test x$signals_style = xPOSIX_SIGNALS; then zsh_cv_sys_sigsuspend, [AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include <signal.h> +#include <stdlib.h> #include <unistd.h> int child=0; void handler(sig) -- 2.28.0