--- a/src/sysdep.c 2011-01-31 01:10:24.000000000 +0100 +++ b/src/sysdep.c 2011-01-31 01:10:47.000000000 +0100 @@ -411,7 +411,7 @@ while (1) { #ifdef subprocesses -#if defined (BSD_SYSTEM) || defined (HPUX) +#if (defined (BSD_SYSTEM) || defined (HPUX)) && !defined(__GNU__) /* Note that kill returns -1 even if the process is just a zombie now. But inevitably a SIGCHLD interrupt should be generated and child_sig will do wait3 and make the process go away. */