From 156ccf42ff622bc7284640bd6679bf35cfa9a123 Mon Sep 17 00:00:00 2001 From: Erik Gilling Date: Wed, 29 May 2013 16:26:23 -0700 Subject: [PATCH] update signal.h to be C90 compatable sigismember, sigaddset, and sigdelset had mixed code and declarations which are not allowed in C90 and before. Change-Id: I662af944fc1489e34bed228ce592e41f50d00e17 Signed-off-by: Erik Gilling --- libc/include/signal.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/libc/include/signal.h b/libc/include/signal.h index 8c9b170b9..15d2d3a68 100644 --- a/libc/include/signal.h +++ b/libc/include/signal.h @@ -59,32 +59,32 @@ extern const char* const sys_signame[]; static __inline__ int sigismember(const sigset_t* set, int signum) { int bit = signum - 1; // Signal numbers start at 1, but bit positions start at 0. + const unsigned long* local_set = (const unsigned long*) set; if (set == NULL || bit < 0 || bit >= (int) (8*sizeof(sigset_t))) { errno = EINVAL; return -1; } - const unsigned long* local_set = (const unsigned long*) set; return (int) ((local_set[bit / LONG_BIT] >> (bit % LONG_BIT)) & 1); } static __inline__ int sigaddset(sigset_t* set, int signum) { int bit = signum - 1; // Signal numbers start at 1, but bit positions start at 0. + unsigned long* local_set = (unsigned long*) set; if (set == NULL || bit < 0 || bit >= (int) (8*sizeof(sigset_t))) { errno = EINVAL; return -1; } - unsigned long* local_set = (unsigned long*) set; local_set[bit / LONG_BIT] |= 1UL << (bit % LONG_BIT); return 0; } static __inline__ int sigdelset(sigset_t* set, int signum) { int bit = signum - 1; // Signal numbers start at 1, but bit positions start at 0. + unsigned long* local_set = (unsigned long*) set; if (set == NULL || bit < 0 || bit >= (int) (8*sizeof(sigset_t))) { errno = EINVAL; return -1; } - unsigned long* local_set = (unsigned long*) set; local_set[bit / LONG_BIT] &= ~(1UL << (bit % LONG_BIT)); return 0; }