diff options
author | Ulrich Drepper <drepper@redhat.com> | 2004-09-09 04:59:02 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2004-09-09 04:59:02 +0000 |
commit | 31f93b3b72ddcce47d867720f0b53016166dc667 (patch) | |
tree | 34a8e1e81e915f02d9c35b50efa867610f350876 | |
parent | 062ad132240ff74929001456bf1c62c1f1f94c86 (diff) | |
download | glibc-31f93b3b72ddcce47d867720f0b53016166dc667.zip glibc-31f93b3b72ddcce47d867720f0b53016166dc667.tar.gz glibc-31f93b3b72ddcce47d867720f0b53016166dc667.tar.bz2 |
[BZ #375]
Update.
2004-09-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/pthread.h
(PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP): Make safe for C++.
(PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP): Likewise.
(PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP): Likewise.
(PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP): Likewise.
[BZ #375]
-rw-r--r-- | nptl/ChangeLog | 9 | ||||
-rw-r--r-- | nptl/sysdeps/pthread/pthread.h | 32 |
2 files changed, 33 insertions, 8 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index f382a00..ea56746 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,12 @@ +2004-09-08 Ulrich Drepper <drepper@redhat.com> + + * sysdeps/pthread/pthread.h + (PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP): Make safe for C++. + (PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP): Likewise. + (PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP): Likewise. + (PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP): Likewise. + [BZ #375] + 2004-09-07 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h: Allow diff --git a/nptl/sysdeps/pthread/pthread.h b/nptl/sysdeps/pthread/pthread.h index 1b0463c..c4c9ec8 100644 --- a/nptl/sysdeps/pthread/pthread.h +++ b/nptl/sysdeps/pthread/pthread.h @@ -27,6 +27,7 @@ #include <signal.h> #include <bits/pthreadtypes.h> #include <bits/setjmp.h> +#include <bits/wordsize.h> /* Detach state. */ @@ -63,12 +64,21 @@ enum #define PTHREAD_MUTEX_INITIALIZER \ { } #ifdef __USE_GNU -# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \ - { .__data = { .__kind = PTHREAD_MUTEX_RECURSIVE_NP } } -# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \ - { .__data = { .__kind = PTHREAD_MUTEX_ERRORCHECK_NP } } -# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \ - { .__data = { .__kind = PTHREAD_MUTEX_ADAPTIVE_NP } } +# if __WORDSIZE == 64 +# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \ + { { 0, 0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP } } +# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \ + { { 0, 0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP } } +# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \ + { { 0, 0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP } } +# else +# define PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP \ + { { 0, 0, 0, PTHREAD_MUTEX_RECURSIVE_NP } } +# define PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP \ + { { 0, 0, 0, PTHREAD_MUTEX_ERRORCHECK_NP } } +# define PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP \ + { { 0, 0, 0, PTHREAD_MUTEX_ADAPTIVE_NP } } +# endif #endif @@ -87,8 +97,14 @@ enum #define PTHREAD_RWLOCK_INITIALIZER \ { } #ifdef __USE_GNU -# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ - { .__data = { .__flags = PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP } } +# if __WORDSIZE == 64 +# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ + { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, \ + PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP } } +# else +# define PTHREAD_RWLOCK_WRITER_NONRECURSIVE_INITIALIZER_NP \ + { { 0, 0, 0, 0, 0, 0, PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP } } +# endif #endif |