This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[COMMITTED PATCH] Make internal lock-init macros return void.
- From: Roland McGrath <roland at hack dot frob dot com>
- To: "GNU C. Library" <libc-alpha at sourceware dot org>
- Date: Mon, 20 Oct 2014 14:15:17 -0700 (PDT)
- Subject: [COMMITTED PATCH] Make internal lock-init macros return void.
- Authentication-results: sourceware.org; auth=none
GCC 4.9 gives warnings about ", 0" expressions when the whole expression's
value is not used. This hits in some of our lock-init macros. But they
are already used as if they returned void, and some others actually do
(i.e. are statements, not expressions).
This has no effect on generated code.
Thanks,
Roland
2014-10-20 Roland McGrath <roland@hack.frob.com>
* sysdeps/nptl/bits/libc-lock.h
[_LIBC && (!NOT_IN_libc || IS_IN_libpthread)]
(__libc_lock_init_recursive): Return void, not 0.
* sysdeps/nptl/bits/libc-lockP.h (__libc_lock_init): Likewise.
(__libc_rwlock_init): Likewise.
* sysdeps/nptl/bits/stdio-lock.h (_IO_lock_init): Likewise.
--- a/sysdeps/nptl/bits/libc-lock.h
+++ b/sysdeps/nptl/bits/libc-lock.h
@@ -62,7 +62,7 @@ typedef struct __libc_lock_recursive_opaque__ __libc_lock_recursive_t;
/* Initialize a recursive mutex. */
#if defined _LIBC && (!defined NOT_IN_libc || defined IS_IN_libpthread)
# define __libc_lock_init_recursive(NAME) \
- ((NAME) = (__libc_lock_recursive_t) _LIBC_LOCK_RECURSIVE_INITIALIZER, 0)
+ ((void) ((NAME) = (__libc_lock_recursive_t) _LIBC_LOCK_RECURSIVE_INITIALIZER))
#else
# define __libc_lock_init_recursive(NAME) \
do { \
--- a/sysdeps/nptl/bits/libc-lockP.h
+++ b/sysdeps/nptl/bits/libc-lockP.h
@@ -126,16 +126,16 @@ typedef pthread_key_t __libc_key_t;
/* Initialize the named lock variable, leaving it in a consistent, unlocked
state. */
#if !defined NOT_IN_libc || defined IS_IN_libpthread
-# define __libc_lock_init(NAME) ((NAME) = LLL_LOCK_INITIALIZER, 0)
+# define __libc_lock_init(NAME) \
+ ((void) ((NAME) = LLL_LOCK_INITIALIZER))
#else
# define __libc_lock_init(NAME) \
__libc_maybe_call (__pthread_mutex_init, (&(NAME), NULL), 0)
#endif
#if defined SHARED && !defined NOT_IN_libc
-/* ((NAME) = (__libc_rwlock_t) PTHREAD_RWLOCK_INITIALIZER, 0) is
- inefficient. */
+/* ((NAME) = (__libc_rwlock_t) PTHREAD_RWLOCK_INITIALIZER) is inefficient. */
# define __libc_rwlock_init(NAME) \
- (__builtin_memset (&(NAME), '\0', sizeof (NAME)), 0)
+ ((void) __builtin_memset (&(NAME), '\0', sizeof (NAME)))
#else
# define __libc_rwlock_init(NAME) \
__libc_maybe_call (__pthread_rwlock_init, (&(NAME), NULL), 0)
--- a/sysdeps/nptl/bits/stdio-lock.h
+++ b/sysdeps/nptl/bits/stdio-lock.h
@@ -31,7 +31,7 @@ typedef struct { int lock; int cnt; void *owner; } _IO_lock_t;
#define _IO_lock_initializer { LLL_LOCK_INITIALIZER, 0, NULL }
#define _IO_lock_init(_name) \
- ((_name) = (_IO_lock_t) _IO_lock_initializer , 0)
+ ((void) ((_name) = (_IO_lock_t) _IO_lock_initializer))
#define _IO_lock_fini(_name) \
((void) 0)