+2014-02-07 Roland McGrath <roland@hack.frob.com>
+
+ * bits/sigset.h (__sigemptyset): Use a statement expression rather
+ than the comma operator, to avoid "rhs of comma has no effect"
+ compiler warnings.
+ (__sigfillset, __sigandset, __sigorset): Likewise.
+ * include/signal.h (__sigemptyset): Likewise.
+ * sysdeps/generic/malloc-machine.h (mutex_lock): Likewise.
+
2014-02-07 Allan McRae <allan@archlinux.org>
* version.h (RELEASE): Set to "development".
overflow if `sigset_t' is wider than `int'. */
#define __sigmask(sig) (((__sigset_t) 1) << ((sig) - 1))
-#define __sigemptyset(set) ((*(set) = (__sigset_t) 0), 0)
-#define __sigfillset(set) ((*(set) = ~(__sigset_t) 0), 0)
+#define __sigemptyset(set) \
+ (__extension__ ({ *(set) = (__sigset_t) 0; 0; })
+#define __sigfillset(set) \
+ (__extension__ ({ *(set) = ~(__sigset_t) 0; 0; }))
#ifdef _GNU_SOURCE
# define __sigisemptyset(set) (*(set) == (__sigset_t) 0)
# define __sigandset(dest, left, right) \
- ((*(dest) = (*(left) & *(right))), 0)
+ (__extension__ ({ *(dest) = *(left) & *(right); 0; }))
# define __sigorset(dest, left, right) \
- ((*(dest) = (*(left) | *(right))), 0)
+ (__extension__ ({ *(dest) = *(left) | *(right); 0; }))
#endif
/* These functions needn't check for a bogus signal number -- error
/* Simplified sigemptyset() implementation without the parameter checking. */
#undef __sigemptyset
-#define __sigemptyset(ss) (__builtin_memset (ss, '\0', sizeof (sigset_t)), 0)
+#define __sigemptyset(ss) \
+ ({ __builtin_memset (ss, '\0', sizeof (sigset_t)); 0; })
/* Allocate real-time signal with highest/lowest available priority. */
typedef int mutex_t;
# define mutex_init(m) (*(m) = 0)
-# define mutex_lock(m) ((*(m) = 1), 0)
+# define mutex_lock(m) ({ *(m) = 1; 0; })
# define mutex_trylock(m) (*(m) ? 1 : ((*(m) = 1), 0))
# define mutex_unlock(m) (*(m) = 0)
# define MUTEX_INITIALIZER (0)