versioner: Fix C11 threads.h
This commit annotates C11 Thread APIs so that bionic versioner won't
report errors.
This commit also adds a guard before `mtx_timedlock` because
`pthread_mutex_timedlock` was introduced in Android L.
Test: PATH=$(pwd)/prebuilts/clang-tools/linux-x86/bin:$PATH \
bionic/tools/versioner/run_tests.py
Bug: 140110040
Change-Id: I3c6ce0831f613ffd3a7bf1c1972fd3548195cc56
diff --git a/libc/include/bits/threads_inlines.h b/libc/include/bits/threads_inlines.h
index 1130b3a..8f2beb0 100644
--- a/libc/include/bits/threads_inlines.h
+++ b/libc/include/bits/threads_inlines.h
@@ -34,9 +34,7 @@
#include <sched.h>
#include <stdlib.h>
-#if !defined(__BIONIC_THREADS_INLINE)
-#define __BIONIC_THREADS_INLINE static __inline
-#endif
+#if defined(__BIONIC_THREADS_INLINE)
__BEGIN_DECLS
@@ -105,10 +103,12 @@
return __bionic_thrd_error(pthread_mutex_lock(__mtx));
}
+#if __ANDROID_API__ >= __ANDROID_API_L__
__BIONIC_THREADS_INLINE int mtx_timedlock(mtx_t* __mtx,
const struct timespec* __timeout) {
return __bionic_thrd_error(pthread_mutex_timedlock(__mtx, __timeout));
}
+#endif
__BIONIC_THREADS_INLINE int mtx_trylock(mtx_t* __mtx) {
return __bionic_thrd_error(pthread_mutex_trylock(__mtx));
@@ -205,3 +205,5 @@
}
__END_DECLS
+
+#endif // __BIONIC_THREADS_INLINE