From a0f8b1152040d2652cdeb741ac586c95221dc5f0 Mon Sep 17 00:00:00 2001 From: Joseph Myers Date: Mon, 12 Jun 2017 17:38:20 +0000 Subject: Fix sigwait namespace (bug 21550). sigwait was added to POSIX in 1995; it is not in older POSIX versions or XPG4 / XPG4.2. Thus it should be declared only if __USE_POSIX199506; signal.h wrongly declares it for __USE_POSIX. (sigwaitinfo is correctly conditioned on __USE_POSIX199309.) This patch fixes the condition on the declaration of sigwait. Tested for x86_64. Because of other namespace problems this does not allow any conform/ XFAILs to be removed. [BZ #21550] * signal/signal.h (sigwait): Only declare if [__USE_POSIX199506]. --- signal/signal.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'signal') diff --git a/signal/signal.h b/signal/signal.h index a43f8887e3..5ff94e0d25 100644 --- a/signal/signal.h +++ b/signal/signal.h @@ -240,12 +240,14 @@ extern int sigaction (int __sig, const struct sigaction *__restrict __act, extern int sigpending (sigset_t *__set) __THROW __nonnull ((1)); +# ifdef __USE_POSIX199506 /* Select any of pending signals from SET or wait for any to arrive. This function is a cancellation point and therefore not marked with __THROW. */ extern int sigwait (const sigset_t *__restrict __set, int *__restrict __sig) __nonnull ((1, 2)); +# endif /* Use POSIX 1995. */ # ifdef __USE_POSIX199309 /* Select any of pending signals from SET and place information in INFO. -- cgit 1.4.1