aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/unix
diff options
context:
space:
mode:
authorRoland McGrath <roland@gnu.org>2002-08-27 02:43:22 +0000
committerRoland McGrath <roland@gnu.org>2002-08-27 02:43:22 +0000
commitb5d482d00ef8bc29f0b4dd84812d52759ebdd630 (patch)
tree95299ffce18eb88410cc0d49cc898a9fd40cc302 /sysdeps/unix
parent20acbc25428bb7c9a78de37236285a09108da313 (diff)
downloadglibc-b5d482d00ef8bc29f0b4dd84812d52759ebdd630.tar
glibc-b5d482d00ef8bc29f0b4dd84812d52759ebdd630.tar.gz
glibc-b5d482d00ef8bc29f0b4dd84812d52759ebdd630.tar.bz2
glibc-b5d482d00ef8bc29f0b4dd84812d52759ebdd630.zip
* sysdeps/generic/sigset-cvt-mask.h (sigset_set_old_mask): Replace
macro with inline function. (sigset_get_old_mask): Likewise. * sysdeps/posix/sigblock.c (__sigblock): Update callers. * sysdeps/posix/sigsetmask.c (__sigsetmask): Likewise. * sysdeps/posix/sigpause.c (__sigpause): Likewise. * sysdeps/posix/sigvec.c (__sigvec, sigvec_wrapper_handler): Likewise. * sysdeps/unix/sysv/aix/sigset-cvt-mask.h (sigset_set_old_mask, sigset_get_old_mask): Make these macros return values. * sysdeps/unix/sysv/linux/sigset-cvt-mask.h: Likewise. * sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h: Likewise. 2002-07-06 Bruno Haible <bruno@clisp.org> * sysdeps/generic/sigset-cvt-mask.h (sigset_set_old_mask, sigset_get_old_mask): Make it work with larger sigset_t. * sysdeps/posix/sigblock.c (__sigblock): Use those macros. * sysdeps/posix/sigsetmask.c (__sigsetmask): Likewise. * sysdeps/posix/sigpause.c (__sigpause): Likewise. 2002-08-26 Roland McGrath <roland@redhat.com>
Diffstat (limited to 'sysdeps/unix')
-rw-r--r--sysdeps/unix/sysv/aix/sigset-cvt-mask.h9
-rw-r--r--sysdeps/unix/sysv/linux/sigset-cvt-mask.h10
-rw-r--r--sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h10
3 files changed, 13 insertions, 16 deletions
diff --git a/sysdeps/unix/sysv/aix/sigset-cvt-mask.h b/sysdeps/unix/sysv/aix/sigset-cvt-mask.h
index 762144e3ed..50d70ae81a 100644
--- a/sysdeps/unix/sysv/aix/sigset-cvt-mask.h
+++ b/sysdeps/unix/sysv/aix/sigset-cvt-mask.h
@@ -1,6 +1,6 @@
/* Convert between lowlevel sigmask and libc representation of sigset_t.
AIX version.
- Copyright (C) 1998, 2000 Free Software Foundation, Inc.
+ Copyright (C) 1998,2000,02 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -19,10 +19,7 @@
02111-1307 USA. */
#define sigset_set_old_mask(set, mask) \
- do { \
- (set)->__losigs = (unsigned int) mask; \
- (set)->__hisigs = 0; \
- } while (0)
+ ((set)->__losigs = (unsigned int) (mask), (set)->__hisigs = 0, 0)
#define sigset_get_old_mask(set, mask) \
- ((mask) = (unsigned int) (set)->__losigs)
+ ((unsigned int) (set)->__losigs)
diff --git a/sysdeps/unix/sysv/linux/sigset-cvt-mask.h b/sysdeps/unix/sysv/linux/sigset-cvt-mask.h
index 2bd4b3a92f..b86a101172 100644
--- a/sysdeps/unix/sysv/linux/sigset-cvt-mask.h
+++ b/sysdeps/unix/sysv/linux/sigset-cvt-mask.h
@@ -1,6 +1,6 @@
/* Convert between lowlevel sigmask and libc representation of sigset_t.
Linux version.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Joe Keane <jgk@jgk.org>.
@@ -20,7 +20,7 @@
02111-1307 USA. */
#define sigset_set_old_mask(set, mask) \
- do { \
+ ({ \
unsigned long int *__ptr; \
int __cnt; \
__ptr = &(set)->__val[0]; \
@@ -29,7 +29,7 @@
do \
*__ptr++ = 0ul; \
while (--__cnt >= 0); \
- } while (0)
+ 0; })
-#define sigset_get_old_mask(set, mask) \
- ((mask) = (unsigned int) (set)->__val[0])
+#define sigset_get_old_mask(set) \
+ ((unsigned int) (set)->__val[0])
diff --git a/sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h b/sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h
index 7b082f746d..f647dfed86 100644
--- a/sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h
+++ b/sysdeps/unix/sysv/sysv4/sigset-cvt-mask.h
@@ -1,6 +1,6 @@
/* Convert between lowlevel sigmask and libc representation of sigset_t.
SysVr4 version.
- Copyright (C) 1998 Free Software Foundation, Inc.
+ Copyright (C) 1998, 2002 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Joe Keane <jgk@jgk.org>.
@@ -20,14 +20,14 @@
02111-1307 USA. */
#define sigset_set_old_mask(set, mask) \
- do { \
+ ({ \
unsigned long int *__ptr; \
__ptr = &(set)->__sigbits[0]; \
__ptr[0] = (mask); \
__ptr[1] = 0ul; \
__ptr[2] = 0ul; \
__ptr[3] = 0ul; \
- } while (0)
+ 0; })
-#define sigset_get_old_mask(set, mask) \
- ((mask) = (unsigned int) (set)->__sigbits[0])
+#define sigset_get_old_mask(set) \
+ ((unsigned int) (set)->__sigbits[0])