aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--bits/sigset.h10
-rw-r--r--include/signal.h3
-rw-r--r--sysdeps/generic/malloc-machine.h2
4 files changed, 18 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index a2967ac884..fef262070c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+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".
diff --git a/bits/sigset.h b/bits/sigset.h
index 23a6c1fd83..e5fac54ede 100644
--- a/bits/sigset.h
+++ b/bits/sigset.h
@@ -44,15 +44,17 @@ typedef unsigned long int __sigset_t;
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
diff --git a/include/signal.h b/include/signal.h
index a019395882..16a7a4289a 100644
--- a/include/signal.h
+++ b/include/signal.h
@@ -55,7 +55,8 @@ extern int __xpg_sigpause (int sig);
/* 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. */
diff --git a/sysdeps/generic/malloc-machine.h b/sysdeps/generic/malloc-machine.h
index df7adebe26..a1b7655fbc 100644
--- a/sysdeps/generic/malloc-machine.h
+++ b/sysdeps/generic/malloc-machine.h
@@ -35,7 +35,7 @@
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)