From: Bruno Haible Date: Sat, 17 Aug 2024 13:07:59 +0000 (+0200) Subject: once: Fix pthread-rwlock crashes with clang (regr. 2024-08-07). X-Git-Url: https://gitweb.git.savannah.gnu.org/gitweb/?a=commitdiff_plain;h=4c323abafa37e5a4d8e8200b4567300d36ba4065;p=gnulib.git once: Fix pthread-rwlock crashes with clang (regr. 2024-08-07). * lib/glthread/once.h: Don't mark pthread_rwlock_init, pthread_rwlockattr_init as weak if we are overriding them. --- diff --git a/ChangeLog b/ChangeLog index 6919557615..7486fb8047 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2024-08-17 Bruno Haible + + once: Fix pthread-rwlock crashes with clang (regr. 2024-08-07). + * lib/glthread/once.h: Don't mark pthread_rwlock_init, + pthread_rwlockattr_init as weak if we are overriding them. + 2024-08-16 Collin Funk pty tests: Add C tests. diff --git a/lib/glthread/once.h b/lib/glthread/once.h index fd00e42350..2452f88dc1 100644 --- a/lib/glthread/once.h +++ b/lib/glthread/once.h @@ -124,7 +124,10 @@ extern int glthread_in_use (void); # pragma weak pthread_mutex_lock # pragma weak pthread_mutex_unlock # pragma weak pthread_mutex_destroy -# pragma weak pthread_rwlock_init +/* Work around clang bug */ +# ifndef pthread_rwlock_init +# pragma weak pthread_rwlock_init +# endif # pragma weak pthread_rwlock_rdlock # pragma weak pthread_rwlock_wrlock # pragma weak pthread_rwlock_unlock @@ -138,7 +141,10 @@ extern int glthread_in_use (void); # pragma weak pthread_mutexattr_init # pragma weak pthread_mutexattr_settype # pragma weak pthread_mutexattr_destroy -# pragma weak pthread_rwlockattr_init +/* Work around clang bug */ +# ifndef pthread_rwlockattr_init +# pragma weak pthread_rwlockattr_init +# endif # if __GNU_LIBRARY__ > 1 # pragma weak pthread_rwlockattr_setkind_np # endif