/* This is a generated file, edit the .stub.php file instead.
 * Stub hash: 3b03373d1bb68de779baaa62db14d98ca9018339 */

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_fork, 0, 0, IS_LONG, 0)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_waitpid, 0, 2, IS_LONG, 0)
	ZEND_ARG_TYPE_INFO(0, process_id, IS_LONG, 0)
	ZEND_ARG_INFO(1, status)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, resource_usage, "[]")
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_wait, 0, 1, IS_LONG, 0)
	ZEND_ARG_INFO(1, status)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, resource_usage, "[]")
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_signal, 0, 2, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO(0, signal, IS_LONG, 0)
	ZEND_ARG_INFO(0, handler)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, restart_syscalls, _IS_BOOL, 0, "true")
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_INFO_EX(arginfo_pcntl_signal_get_handler, 0, 0, 1)
	ZEND_ARG_TYPE_INFO(0, signal, IS_LONG, 0)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_signal_dispatch, 0, 0, _IS_BOOL, 0)
ZEND_END_ARG_INFO()

#if defined(HAVE_SIGPROCMASK)
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_sigprocmask, 0, 2, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO(0, mode, IS_LONG, 0)
	ZEND_ARG_TYPE_INFO(0, signals, IS_ARRAY, 0)
	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, old_signals, "null")
ZEND_END_ARG_INFO()
#endif

#if defined(HAVE_STRUCT_SIGINFO_T) && (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_pcntl_sigwaitinfo, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
	ZEND_ARG_TYPE_INFO(0, signals, IS_ARRAY, 0)
	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, info, "[]")
ZEND_END_ARG_INFO()
#endif

#if defined(HAVE_STRUCT_SIGINFO_T) && (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_pcntl_sigtimedwait, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
	ZEND_ARG_TYPE_INFO(0, signals, IS_ARRAY, 0)
	ZEND_ARG_INFO_WITH_DEFAULT_VALUE(1, info, "[]")
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, seconds, IS_LONG, 0, "0")
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, nanoseconds, IS_LONG, 0, "0")
ZEND_END_ARG_INFO()
#endif

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_wifexited, 0, 1, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO(0, status, IS_LONG, 0)
ZEND_END_ARG_INFO()

#define arginfo_pcntl_wifstopped arginfo_pcntl_wifexited

#if defined(HAVE_WCONTINUED)
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_wifcontinued, 0, 1, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO(0, status, IS_LONG, 0)
ZEND_END_ARG_INFO()
#endif

#define arginfo_pcntl_wifsignaled arginfo_pcntl_wifexited

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_pcntl_wexitstatus, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
	ZEND_ARG_TYPE_INFO(0, status, IS_LONG, 0)
ZEND_END_ARG_INFO()

#define arginfo_pcntl_wtermsig arginfo_pcntl_wexitstatus

#define arginfo_pcntl_wstopsig arginfo_pcntl_wexitstatus

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_exec, 0, 1, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO(0, path, IS_STRING, 0)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, args, IS_ARRAY, 0, "[]")
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, env_vars, IS_ARRAY, 0, "[]")
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_alarm, 0, 1, IS_LONG, 0)
	ZEND_ARG_TYPE_INFO(0, seconds, IS_LONG, 0)
ZEND_END_ARG_INFO()

#define arginfo_pcntl_get_last_error arginfo_pcntl_fork

#define arginfo_pcntl_errno arginfo_pcntl_fork

#if defined(HAVE_GETPRIORITY)
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_pcntl_getpriority, 0, 0, MAY_BE_LONG|MAY_BE_FALSE)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, process_id, IS_LONG, 1, "null")
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "PRIO_PROCESS")
ZEND_END_ARG_INFO()
#endif

#if defined(HAVE_SETPRIORITY)
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_setpriority, 0, 1, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO(0, priority, IS_LONG, 0)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, process_id, IS_LONG, 1, "null")
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, mode, IS_LONG, 0, "PRIO_PROCESS")
ZEND_END_ARG_INFO()
#endif

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_strerror, 0, 1, IS_STRING, 0)
	ZEND_ARG_TYPE_INFO(0, error_code, IS_LONG, 0)
ZEND_END_ARG_INFO()

ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_async_signals, 0, 0, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, enable, _IS_BOOL, 1, "null")
ZEND_END_ARG_INFO()

#if defined(HAVE_UNSHARE)
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_unshare, 0, 1, _IS_BOOL, 0)
	ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
ZEND_END_ARG_INFO()
#endif

#if defined(HAVE_RFORK)
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_rfork, 0, 1, IS_LONG, 0)
	ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
	ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, signal, IS_LONG, 0, "0")
ZEND_END_ARG_INFO()
#endif

#if defined(HAVE_FORKX)
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_pcntl_forkx, 0, 1, IS_LONG, 0)
	ZEND_ARG_TYPE_INFO(0, flags, IS_LONG, 0)
ZEND_END_ARG_INFO()
#endif


ZEND_FUNCTION(pcntl_fork);
ZEND_FUNCTION(pcntl_waitpid);
ZEND_FUNCTION(pcntl_wait);
ZEND_FUNCTION(pcntl_signal);
ZEND_FUNCTION(pcntl_signal_get_handler);
ZEND_FUNCTION(pcntl_signal_dispatch);
#if defined(HAVE_SIGPROCMASK)
ZEND_FUNCTION(pcntl_sigprocmask);
#endif
#if defined(HAVE_STRUCT_SIGINFO_T) && (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
ZEND_FUNCTION(pcntl_sigwaitinfo);
#endif
#if defined(HAVE_STRUCT_SIGINFO_T) && (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
ZEND_FUNCTION(pcntl_sigtimedwait);
#endif
ZEND_FUNCTION(pcntl_wifexited);
ZEND_FUNCTION(pcntl_wifstopped);
#if defined(HAVE_WCONTINUED)
ZEND_FUNCTION(pcntl_wifcontinued);
#endif
ZEND_FUNCTION(pcntl_wifsignaled);
ZEND_FUNCTION(pcntl_wexitstatus);
ZEND_FUNCTION(pcntl_wtermsig);
ZEND_FUNCTION(pcntl_wstopsig);
ZEND_FUNCTION(pcntl_exec);
ZEND_FUNCTION(pcntl_alarm);
ZEND_FUNCTION(pcntl_get_last_error);
#if defined(HAVE_GETPRIORITY)
ZEND_FUNCTION(pcntl_getpriority);
#endif
#if defined(HAVE_SETPRIORITY)
ZEND_FUNCTION(pcntl_setpriority);
#endif
ZEND_FUNCTION(pcntl_strerror);
ZEND_FUNCTION(pcntl_async_signals);
#if defined(HAVE_UNSHARE)
ZEND_FUNCTION(pcntl_unshare);
#endif
#if defined(HAVE_RFORK)
ZEND_FUNCTION(pcntl_rfork);
#endif
#if defined(HAVE_FORKX)
ZEND_FUNCTION(pcntl_forkx);
#endif


static const zend_function_entry ext_functions[] = {
	ZEND_FE(pcntl_fork, arginfo_pcntl_fork)
	ZEND_FE(pcntl_waitpid, arginfo_pcntl_waitpid)
	ZEND_FE(pcntl_wait, arginfo_pcntl_wait)
	ZEND_FE(pcntl_signal, arginfo_pcntl_signal)
	ZEND_FE(pcntl_signal_get_handler, arginfo_pcntl_signal_get_handler)
	ZEND_FE(pcntl_signal_dispatch, arginfo_pcntl_signal_dispatch)
#if defined(HAVE_SIGPROCMASK)
	ZEND_FE(pcntl_sigprocmask, arginfo_pcntl_sigprocmask)
#endif
#if defined(HAVE_STRUCT_SIGINFO_T) && (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
	ZEND_FE(pcntl_sigwaitinfo, arginfo_pcntl_sigwaitinfo)
#endif
#if defined(HAVE_STRUCT_SIGINFO_T) && (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
	ZEND_FE(pcntl_sigtimedwait, arginfo_pcntl_sigtimedwait)
#endif
	ZEND_FE(pcntl_wifexited, arginfo_pcntl_wifexited)
	ZEND_FE(pcntl_wifstopped, arginfo_pcntl_wifstopped)
#if defined(HAVE_WCONTINUED)
	ZEND_FE(pcntl_wifcontinued, arginfo_pcntl_wifcontinued)
#endif
	ZEND_FE(pcntl_wifsignaled, arginfo_pcntl_wifsignaled)
	ZEND_FE(pcntl_wexitstatus, arginfo_pcntl_wexitstatus)
	ZEND_FE(pcntl_wtermsig, arginfo_pcntl_wtermsig)
	ZEND_FE(pcntl_wstopsig, arginfo_pcntl_wstopsig)
	ZEND_FE(pcntl_exec, arginfo_pcntl_exec)
	ZEND_FE(pcntl_alarm, arginfo_pcntl_alarm)
	ZEND_FE(pcntl_get_last_error, arginfo_pcntl_get_last_error)
	ZEND_FALIAS(pcntl_errno, pcntl_get_last_error, arginfo_pcntl_errno)
#if defined(HAVE_GETPRIORITY)
	ZEND_FE(pcntl_getpriority, arginfo_pcntl_getpriority)
#endif
#if defined(HAVE_SETPRIORITY)
	ZEND_FE(pcntl_setpriority, arginfo_pcntl_setpriority)
#endif
	ZEND_FE(pcntl_strerror, arginfo_pcntl_strerror)
	ZEND_FE(pcntl_async_signals, arginfo_pcntl_async_signals)
#if defined(HAVE_UNSHARE)
	ZEND_FE(pcntl_unshare, arginfo_pcntl_unshare)
#endif
#if defined(HAVE_RFORK)
	ZEND_FE(pcntl_rfork, arginfo_pcntl_rfork)
#endif
#if defined(HAVE_FORKX)
	ZEND_FE(pcntl_forkx, arginfo_pcntl_forkx)
#endif
	ZEND_FE_END
};

static void register_pcntl_symbols(int module_number)
{
#if defined(WNOHANG)
	REGISTER_LONG_CONSTANT("WNOHANG", LONG_CONST(WNOHANG), CONST_PERSISTENT);
#endif
#if defined(WUNTRACED)
	REGISTER_LONG_CONSTANT("WUNTRACED", LONG_CONST(WUNTRACED), CONST_PERSISTENT);
#endif
#if defined(HAVE_WCONTINUED)
	REGISTER_LONG_CONSTANT("WCONTINUED", LONG_CONST(WCONTINUED), CONST_PERSISTENT);
#endif
	REGISTER_LONG_CONSTANT("SIG_IGN", LONG_CONST(SIG_IGN), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIG_DFL", LONG_CONST(SIG_DFL), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIG_ERR", LONG_CONST(SIG_ERR), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGHUP", LONG_CONST(SIGHUP), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGINT", LONG_CONST(SIGINT), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGQUIT", LONG_CONST(SIGQUIT), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGILL", LONG_CONST(SIGILL), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGTRAP", LONG_CONST(SIGTRAP), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGABRT", LONG_CONST(SIGABRT), CONST_PERSISTENT);
#if defined(SIGIOT)
	REGISTER_LONG_CONSTANT("SIGIOT", LONG_CONST(SIGIOT), CONST_PERSISTENT);
#endif
	REGISTER_LONG_CONSTANT("SIGBUS", LONG_CONST(SIGBUS), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGFPE", LONG_CONST(SIGFPE), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGKILL", LONG_CONST(SIGKILL), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGUSR1", LONG_CONST(SIGUSR1), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGSEGV", LONG_CONST(SIGSEGV), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGUSR2", LONG_CONST(SIGUSR2), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGPIPE", LONG_CONST(SIGPIPE), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGALRM", LONG_CONST(SIGALRM), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGTERM", LONG_CONST(SIGTERM), CONST_PERSISTENT);
#if defined(SIGSTKFLT)
	REGISTER_LONG_CONSTANT("SIGSTKFLT", LONG_CONST(SIGSTKFLT), CONST_PERSISTENT);
#endif
#if defined(SIGCLD)
	REGISTER_LONG_CONSTANT("SIGCLD", LONG_CONST(SIGCLD), CONST_PERSISTENT);
#endif
#if defined(SIGCHLD)
	REGISTER_LONG_CONSTANT("SIGCHLD", LONG_CONST(SIGCHLD), CONST_PERSISTENT);
#endif
	REGISTER_LONG_CONSTANT("SIGCONT", LONG_CONST(SIGCONT), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGSTOP", LONG_CONST(SIGSTOP), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGTSTP", LONG_CONST(SIGTSTP), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGTTIN", LONG_CONST(SIGTTIN), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGTTOU", LONG_CONST(SIGTTOU), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGURG", LONG_CONST(SIGURG), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGXCPU", LONG_CONST(SIGXCPU), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGXFSZ", LONG_CONST(SIGXFSZ), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGVTALRM", LONG_CONST(SIGVTALRM), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGPROF", LONG_CONST(SIGPROF), CONST_PERSISTENT);
	REGISTER_LONG_CONSTANT("SIGWINCH", LONG_CONST(SIGWINCH), CONST_PERSISTENT);
#if defined(SIGPOLL)
	REGISTER_LONG_CONSTANT("SIGPOLL", LONG_CONST(SIGPOLL), CONST_PERSISTENT);
#endif
#if defined(SIGIO)
	REGISTER_LONG_CONSTANT("SIGIO", LONG_CONST(SIGIO), CONST_PERSISTENT);
#endif
#if defined(SIGPWR)
	REGISTER_LONG_CONSTANT("SIGPWR", LONG_CONST(SIGPWR), CONST_PERSISTENT);
#endif
#if defined(SIGINFO)
	REGISTER_LONG_CONSTANT("SIGINFO", LONG_CONST(SIGINFO), CONST_PERSISTENT);
#endif
#if defined(SIGSYS)
	REGISTER_LONG_CONSTANT("SIGSYS", LONG_CONST(SIGSYS), CONST_PERSISTENT);
#endif
#if defined(SIGSYS)
	REGISTER_LONG_CONSTANT("SIGBABY", LONG_CONST(SIGSYS), CONST_PERSISTENT);
#endif
#if defined(SIGRTMIN)
	REGISTER_LONG_CONSTANT("SIGRTMIN", LONG_CONST(SIGRTMIN), CONST_PERSISTENT);
#endif
#if defined(SIGRTMAX)
	REGISTER_LONG_CONSTANT("SIGRTMAX", LONG_CONST(SIGRTMAX), CONST_PERSISTENT);
#endif
#if (defined(HAVE_GETPRIORITY) || defined(HAVE_SETPRIORITY))
	REGISTER_LONG_CONSTANT("PRIO_PGRP", PRIO_PGRP, CONST_PERSISTENT);
#endif
#if (defined(HAVE_GETPRIORITY) || defined(HAVE_SETPRIORITY))
	REGISTER_LONG_CONSTANT("PRIO_USER", PRIO_USER, CONST_PERSISTENT);
#endif
#if (defined(HAVE_GETPRIORITY) || defined(HAVE_SETPRIORITY))
	REGISTER_LONG_CONSTANT("PRIO_PROCESS", PRIO_PROCESS, CONST_PERSISTENT);
#endif
#if (defined(HAVE_GETPRIORITY) || defined(HAVE_SETPRIORITY)) && defined(PRIO_DARWIN_BG)
	REGISTER_LONG_CONSTANT("PRIO_DARWIN_BG", PRIO_DARWIN_BG, CONST_PERSISTENT);
#endif
#if (defined(HAVE_GETPRIORITY) || defined(HAVE_SETPRIORITY)) && defined(PRIO_DARWIN_BG)
	REGISTER_LONG_CONSTANT("PRIO_DARWIN_THREAD", PRIO_DARWIN_THREAD, CONST_PERSISTENT);
#endif
#if defined(HAVE_SIGPROCMASK)
	REGISTER_LONG_CONSTANT("SIG_BLOCK", SIG_BLOCK, CONST_PERSISTENT);
#endif
#if defined(HAVE_SIGPROCMASK)
	REGISTER_LONG_CONSTANT("SIG_UNBLOCK", SIG_UNBLOCK, CONST_PERSISTENT);
#endif
#if defined(HAVE_SIGPROCMASK)
	REGISTER_LONG_CONSTANT("SIG_SETMASK", SIG_SETMASK, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
	REGISTER_LONG_CONSTANT("SI_USER", SI_USER, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(SI_NOINFO)
	REGISTER_LONG_CONSTANT("SI_NOINFO", SI_NOINFO, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(SI_KERNEL)
	REGISTER_LONG_CONSTANT("SI_KERNEL", SI_KERNEL, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
	REGISTER_LONG_CONSTANT("SI_QUEUE", SI_QUEUE, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
	REGISTER_LONG_CONSTANT("SI_TIMER", SI_TIMER, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
	REGISTER_LONG_CONSTANT("SI_MESGQ", SI_MESGQ, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT))
	REGISTER_LONG_CONSTANT("SI_ASYNCIO", SI_ASYNCIO, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(SI_SIGIO)
	REGISTER_LONG_CONSTANT("SI_SIGIO", SI_SIGIO, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(SI_TKILL)
	REGISTER_LONG_CONSTANT("SI_TKILL", SI_TKILL, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(CLD_EXITED)
	REGISTER_LONG_CONSTANT("CLD_EXITED", CLD_EXITED, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(CLD_KILLED)
	REGISTER_LONG_CONSTANT("CLD_KILLED", CLD_KILLED, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(CLD_DUMPED)
	REGISTER_LONG_CONSTANT("CLD_DUMPED", CLD_DUMPED, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(CLD_TRAPPED)
	REGISTER_LONG_CONSTANT("CLD_TRAPPED", CLD_TRAPPED, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(CLD_STOPPED)
	REGISTER_LONG_CONSTANT("CLD_STOPPED", CLD_STOPPED, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(CLD_CONTINUED)
	REGISTER_LONG_CONSTANT("CLD_CONTINUED", CLD_CONTINUED, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(TRAP_BRKPT)
	REGISTER_LONG_CONSTANT("TRAP_BRKPT", TRAP_BRKPT, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(TRAP_TRACE)
	REGISTER_LONG_CONSTANT("TRAP_TRACE", TRAP_TRACE, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(POLL_IN)
	REGISTER_LONG_CONSTANT("POLL_IN", POLL_IN, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(POLL_OUT)
	REGISTER_LONG_CONSTANT("POLL_OUT", POLL_OUT, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(POLL_MSG)
	REGISTER_LONG_CONSTANT("POLL_MSG", POLL_MSG, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(POLL_ERR)
	REGISTER_LONG_CONSTANT("POLL_ERR", POLL_ERR, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(POLL_PRI)
	REGISTER_LONG_CONSTANT("POLL_PRI", POLL_PRI, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(POLL_HUP)
	REGISTER_LONG_CONSTANT("POLL_HUP", POLL_HUP, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_ILLOPC)
	REGISTER_LONG_CONSTANT("ILL_ILLOPC", ILL_ILLOPC, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_ILLOPN)
	REGISTER_LONG_CONSTANT("ILL_ILLOPN", ILL_ILLOPN, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_ILLADR)
	REGISTER_LONG_CONSTANT("ILL_ILLADR", ILL_ILLADR, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_ILLTRP)
	REGISTER_LONG_CONSTANT("ILL_ILLTRP", ILL_ILLTRP, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_PRVOPC)
	REGISTER_LONG_CONSTANT("ILL_PRVOPC", ILL_PRVOPC, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_PRVREG)
	REGISTER_LONG_CONSTANT("ILL_PRVREG", ILL_PRVREG, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_COPROC)
	REGISTER_LONG_CONSTANT("ILL_COPROC", ILL_COPROC, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(ILL_BADSTK)
	REGISTER_LONG_CONSTANT("ILL_BADSTK", ILL_BADSTK, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_INTDIV)
	REGISTER_LONG_CONSTANT("FPE_INTDIV", FPE_INTDIV, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_INTOVF)
	REGISTER_LONG_CONSTANT("FPE_INTOVF", FPE_INTOVF, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_FLTDIV)
	REGISTER_LONG_CONSTANT("FPE_FLTDIV", FPE_FLTDIV, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_FLTOVF)
	REGISTER_LONG_CONSTANT("FPE_FLTOVF", FPE_FLTOVF, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_FLTUND)
	REGISTER_LONG_CONSTANT("FPE_FLTUND", FPE_FLTUND, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_FLTRES)
	REGISTER_LONG_CONSTANT("FPE_FLTRES", FPE_FLTRES, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_FLTINV)
	REGISTER_LONG_CONSTANT("FPE_FLTINV", FPE_FLTINV, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(FPE_FLTSUB)
	REGISTER_LONG_CONSTANT("FPE_FLTSUB", FPE_FLTSUB, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(SEGV_MAPERR)
	REGISTER_LONG_CONSTANT("SEGV_MAPERR", SEGV_MAPERR, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(SEGV_ACCERR)
	REGISTER_LONG_CONSTANT("SEGV_ACCERR", SEGV_ACCERR, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(BUS_ADRALN)
	REGISTER_LONG_CONSTANT("BUS_ADRALN", BUS_ADRALN, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(BUS_ADRERR)
	REGISTER_LONG_CONSTANT("BUS_ADRERR", BUS_ADRERR, CONST_PERSISTENT);
#endif
#if (defined(HAVE_SIGWAITINFO) && defined(HAVE_SIGTIMEDWAIT)) && defined(BUS_OBJERR)
	REGISTER_LONG_CONSTANT("BUS_OBJERR", BUS_OBJERR, CONST_PERSISTENT);
#endif
#if defined(HAVE_UNSHARE)
	REGISTER_LONG_CONSTANT("CLONE_NEWNS", CLONE_NEWNS, CONST_PERSISTENT);
#endif
#if defined(HAVE_UNSHARE) && defined(CLONE_NEWIPC)
	REGISTER_LONG_CONSTANT("CLONE_NEWIPC", CLONE_NEWIPC, CONST_PERSISTENT);
#endif
#if defined(HAVE_UNSHARE) && defined(CLONE_NEWUTS)
	REGISTER_LONG_CONSTANT("CLONE_NEWUTS", CLONE_NEWUTS, CONST_PERSISTENT);
#endif
#if defined(HAVE_UNSHARE) && defined(CLONE_NEWNET)
	REGISTER_LONG_CONSTANT("CLONE_NEWNET", CLONE_NEWNET, CONST_PERSISTENT);
#endif
#if defined(HAVE_UNSHARE) && defined(CLONE_NEWPID)
	REGISTER_LONG_CONSTANT("CLONE_NEWPID", CLONE_NEWPID, CONST_PERSISTENT);
#endif
#if defined(HAVE_UNSHARE) && defined(CLONE_NEWUSER)
	REGISTER_LONG_CONSTANT("CLONE_NEWUSER", CLONE_NEWUSER, CONST_PERSISTENT);
#endif
#if defined(HAVE_UNSHARE) && defined(CLONE_NEWCGROUP)
	REGISTER_LONG_CONSTANT("CLONE_NEWCGROUP", CLONE_NEWCGROUP, CONST_PERSISTENT);
#endif
#if defined(HAVE_RFORK) && defined(RFPROC)
	REGISTER_LONG_CONSTANT("RFPROC", RFPROC, CONST_PERSISTENT);
#endif
#if defined(HAVE_RFORK) && defined(RFNOWAIT)
	REGISTER_LONG_CONSTANT("RFNOWAIT", RFNOWAIT, CONST_PERSISTENT);
#endif
#if defined(HAVE_RFORK) && defined(RFCFDG)
	REGISTER_LONG_CONSTANT("RFCFDG", RFCFDG, CONST_PERSISTENT);
#endif
#if defined(HAVE_RFORK) && defined(RFFDG)
	REGISTER_LONG_CONSTANT("RFFDG", RFFDG, CONST_PERSISTENT);
#endif
#if defined(HAVE_RFORK) && defined(RFLINUXTHPN)
	REGISTER_LONG_CONSTANT("RFLINUXTHPN", RFLINUXTHPN, CONST_PERSISTENT);
#endif
#if defined(HAVE_RFORK) && defined(RFTSIGZMB)
	REGISTER_LONG_CONSTANT("RFTSIGZMB", RFTSIGZMB, CONST_PERSISTENT);
#endif
#if defined(HAVE_RFORK) && defined(RFTHREAD)
	REGISTER_LONG_CONSTANT("RFTHREAD", RFTHREAD, CONST_PERSISTENT);
#endif
#if defined(HAVE_FORKX)
	REGISTER_LONG_CONSTANT("FORK_NOSIGCHLD", FORK_NOSIGCHLD, CONST_PERSISTENT);
#endif
#if defined(HAVE_FORKX)
	REGISTER_LONG_CONSTANT("FORK_WAITPID", FORK_WAITPID, CONST_PERSISTENT);
#endif
#if defined(EINTR)
	REGISTER_LONG_CONSTANT("PCNTL_EINTR", EINTR, CONST_PERSISTENT);
#endif
#if defined(ECHILD)
	REGISTER_LONG_CONSTANT("PCNTL_ECHILD", ECHILD, CONST_PERSISTENT);
#endif
#if defined(EINVAL)
	REGISTER_LONG_CONSTANT("PCNTL_EINVAL", EINVAL, CONST_PERSISTENT);
#endif
#if defined(EAGAIN)
	REGISTER_LONG_CONSTANT("PCNTL_EAGAIN", EAGAIN, CONST_PERSISTENT);
#endif
#if defined(ESRCH)
	REGISTER_LONG_CONSTANT("PCNTL_ESRCH", ESRCH, CONST_PERSISTENT);
#endif
#if defined(EACCES)
	REGISTER_LONG_CONSTANT("PCNTL_EACCES", EACCES, CONST_PERSISTENT);
#endif
#if defined(EPERM)
	REGISTER_LONG_CONSTANT("PCNTL_EPERM", EPERM, CONST_PERSISTENT);
#endif
#if defined(ENOMEM)
	REGISTER_LONG_CONSTANT("PCNTL_ENOMEM", ENOMEM, CONST_PERSISTENT);
#endif
#if defined(E2BIG)
	REGISTER_LONG_CONSTANT("PCNTL_E2BIG", E2BIG, CONST_PERSISTENT);
#endif
#if defined(EFAULT)
	REGISTER_LONG_CONSTANT("PCNTL_EFAULT", EFAULT, CONST_PERSISTENT);
#endif
#if defined(EIO)
	REGISTER_LONG_CONSTANT("PCNTL_EIO", EIO, CONST_PERSISTENT);
#endif
#if defined(EISDIR)
	REGISTER_LONG_CONSTANT("PCNTL_EISDIR", EISDIR, CONST_PERSISTENT);
#endif
#if defined(ELIBBAD)
	REGISTER_LONG_CONSTANT("PCNTL_ELIBBAD", ELIBBAD, CONST_PERSISTENT);
#endif
#if defined(ELOOP)
	REGISTER_LONG_CONSTANT("PCNTL_ELOOP", ELOOP, CONST_PERSISTENT);
#endif
#if defined(EMFILE)
	REGISTER_LONG_CONSTANT("PCNTL_EMFILE", EMFILE, CONST_PERSISTENT);
#endif
#if defined(ENAMETOOLONG)
	REGISTER_LONG_CONSTANT("PCNTL_ENAMETOOLONG", ENAMETOOLONG, CONST_PERSISTENT);
#endif
#if defined(ENFILE)
	REGISTER_LONG_CONSTANT("PCNTL_ENFILE", ENFILE, CONST_PERSISTENT);
#endif
#if defined(ENOENT)
	REGISTER_LONG_CONSTANT("PCNTL_ENOENT", ENOENT, CONST_PERSISTENT);
#endif
#if defined(ENOEXEC)
	REGISTER_LONG_CONSTANT("PCNTL_ENOEXEC", ENOEXEC, CONST_PERSISTENT);
#endif
#if defined(ENOTDIR)
	REGISTER_LONG_CONSTANT("PCNTL_ENOTDIR", ENOTDIR, CONST_PERSISTENT);
#endif
#if defined(ETXTBSY)
	REGISTER_LONG_CONSTANT("PCNTL_ETXTBSY", ETXTBSY, CONST_PERSISTENT);
#endif
#if defined(ENOSPC)
	REGISTER_LONG_CONSTANT("PCNTL_ENOSPC", ENOSPC, CONST_PERSISTENT);
#endif
#if defined(EUSERS)
	REGISTER_LONG_CONSTANT("PCNTL_EUSERS", EUSERS, CONST_PERSISTENT);
#endif
#if defined(ECAPMODE)
	REGISTER_LONG_CONSTANT("PCNTL_ECAPMODE", ECAPMODE, CONST_PERSISTENT);
#endif
}
