Hash :
5d894998
Author :
Date :
2024-01-25T20:15:10
Resolve conflicts for functions introduced in Android API level 30. * lib/threads.in.h (thrd_sleep): Consider REPLACE_THRD_SLEEP. (thrd_yield): Consider REPLACE_THRD_YIELD. (mtx_init): Consider REPLACE_MTX_INIT. (mtx_lock): Consider REPLACE_MTX_LOCK. (mtx_trylock): Consider REPLACE_MTX_TRYLOCK. (mtx_timedlock): Consider REPLACE_MTX_TIMEDLOCK. (mtx_unlock): Consider REPLACE_MTX_UNLOCK. (mtx_destroy): Consider REPLACE_MTX_DESTROY. (call_once): Consider REPLACE_CALL_ONCE. Fix warning message. (cnd_init): Consider REPLACE_CND_INIT. (cnd_wait): Consider REPLACE_CND_WAIT. (cnd_timedwait): Consider REPLACE_CND_TIMEDWAIT. (cnd_signal): Consider REPLACE_CND_SIGNAL. (cnd_broadcast): Consider REPLACE_CND_BROADCAST. (cnd_destroy): Consider REPLACE_CND_DESTROY. (tss_create): Consider REPLACE_TSS_CREATE. (tss_set): Consider REPLACE_TSS_SET. (tss_get): Consider REPLACE_TSS_GET. (tss_delete): Consider REPLACE_TSS_DELETE. * m4/threads_h.m4 (gl_THREADS_H_DEFAULTS): Initialize REPLACE_CALL_ONCE, REPLACE_CND_BROADCAST, REPLACE_CND_DESTROY, REPLACE_CND_INIT, REPLACE_CND_SIGNAL, REPLACE_CND_TIMEDWAIT, REPLACE_CND_WAIT, REPLACE_MTX_DESTROY, REPLACE_MTX_INIT, REPLACE_MTX_LOCK, REPLACE_MTX_TIMEDLOCK, REPLACE_MTX_TRYLOCK, REPLACE_MTX_UNLOCK, REPLACE_THRD_SLEEP, REPLACE_THRD_YIELD, REPLACE_TSS_CREATE, REPLACE_TSS_DELETE, REPLACE_TSS_GET, REPLACE_TSS_SET. * modules/threads-h (Makefile.am): Substitute REPLACE_CALL_ONCE, REPLACE_CND_BROADCAST, REPLACE_CND_DESTROY, REPLACE_CND_INIT, REPLACE_CND_SIGNAL, REPLACE_CND_TIMEDWAIT, REPLACE_CND_WAIT, REPLACE_MTX_DESTROY, REPLACE_MTX_INIT, REPLACE_MTX_LOCK, REPLACE_MTX_TIMEDLOCK, REPLACE_MTX_TRYLOCK, REPLACE_MTX_UNLOCK, REPLACE_THRD_SLEEP, REPLACE_THRD_YIELD, REPLACE_TSS_CREATE, REPLACE_TSS_DELETE, REPLACE_TSS_GET, REPLACE_TSS_SET. * m4/thrd.m4 (gl_FUNC_THRD_CREATE): New macro. * modules/thrd (configure.ac): Invoke gl_FUNC_THRD_CREATE. * m4/call_once.m4: New file. * modules/call_once (Files): Add m4/call_once.m4. (configure.ac): Invoke gl_FUNC_CALL_ONCE. Consider REPLACE_CALL_ONCE. * m4/cnd.m4: New file. * modules/cnd (Files): Add m4/cnd.m4. (configure.ac): Invoke gl_FUNC_CND_INIT. Consider REPLACE_CND_INIT. * m4/mtx.m4: New file. * modules/mtx (Files): Add m4/mtx.m4. (configure.ac): Invoke gl_FUNC_MTX_INIT. Consider REPLACE_MTX_INIT. * m4/tss.m4: New file. * modules/tss (Files): Add m4/tss.m4. (configure.ac): Invoke gl_FUNC_TSS_CREATE. Consider REPLACE_TSS_CREATE. * doc/posix-functions/call_once.texi: Mention the Android API levels. * doc/posix-functions/cnd_broadcast.texi: Likewise. * doc/posix-functions/cnd_destroy.texi: Likewise. * doc/posix-functions/cnd_init.texi: Likewise. * doc/posix-functions/cnd_signal.texi: Likewise. * doc/posix-functions/cnd_timedwait.texi: Likewise. * doc/posix-functions/cnd_wait.texi: Likewise. * doc/posix-functions/mtx_destroy.texi: Likewise. * doc/posix-functions/mtx_init.texi: Likewise. * doc/posix-functions/mtx_lock.texi: Likewise. * doc/posix-functions/mtx_timedlock.texi: Likewise. * doc/posix-functions/mtx_trylock.texi: Likewise. * doc/posix-functions/mtx_unlock.texi: Likewise. * doc/posix-functions/thrd_create.texi: Likewise. * doc/posix-functions/thrd_current.texi: Likewise. * doc/posix-functions/thrd_detach.texi: Likewise. * doc/posix-functions/thrd_equal.texi: Likewise. * doc/posix-functions/thrd_exit.texi: Likewise. * doc/posix-functions/thrd_join.texi: Likewise. * doc/posix-functions/thrd_sleep.texi: Likewise. * doc/posix-functions/thrd_yield.texi: Likewise. * doc/posix-functions/tss_create.texi: Likewise. * doc/posix-functions/tss_delete.texi: Likewise. * doc/posix-functions/tss_get.texi: Likewise. * doc/posix-functions/tss_set.texi: Likewise.
@node tss_get
@section @code{tss_get}
@findex tss_get
Documentation:@*
@ifinfo
@ref{ISO C Thread-local Storage,,Thread-local Storage,libc}.
@end ifinfo
@ifnotinfo
@url{https://www.gnu.org/software/libc/manual/html_node/ISO-C-Thread_002dlocal-Storage.html}.
@end ifnotinfo
Gnulib module: tss
Portability problems fixed by Gnulib:
@itemize
@item
This function is missing on many platforms:
glibc 2.27, macOS 11.1, FreeBSD 9.3, NetBSD 8.0, OpenBSD 6.7, Minix 3.1.8, AIX 7.1, HP-UX 11.31, IRIX 6.5, Solaris 11.3, Cygwin 2.9, mingw, MSVC 14, Android API level 29.
@end itemize
Portability problems not fixed by Gnulib:
@itemize
@end itemize