diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2012-11-20 22:25:08 -0800 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2012-11-29 23:38:54 -0800 |
commit | 30d594eb300acfbf6a829bb299bface0d7ea8d8c (patch) | |
tree | acc538a1c333009b7199d66802b17ae9a67e709e /lib/glthread/thread.h | |
parent | e4b23b86811ef9aa8775c7e86d3abfaaebde488f (diff) | |
download | gnulib-30d594eb300acfbf6a829bb299bface0d7ea8d8c.tar.gz |
cond, lock, thread: better 'inline'
* lib/glthread/cond.c, lib/glthread/cond.h (_GLTHREAD_COND_INLINE):
* lib/glthread/thread.c, lib/glthread/thread.h (_GLTHREAD_THREAD_INLINE):
New macros. Use them instead of static inline, for header functions.
* lib/glthread/cond.c (gl_waitqueue_init, gl_waitqueue_remove)
(gl_waitqueue_notify_first, gl_waitqueue_notify_all):
* lib/glthread/lock.c (gl_waitqueue_init)
(gl_waitqueue_notify_first, gl_waitqueue_notify_all):
* lib/glthread/thread.c (get_current_thread_handle):
Change 'static inline' to 'inline'.
* lib/glthread/cond.h, lib/glthread/thread.h:
Use _GL_INLINE_HEADER_BEGIN, _GL_INLINE_HEADER_END.
* m4/cond.m4 (gl_COND):
* m4/lock.m4 (gl_PREREQ_LOCK):
* m4/thread.m4 (gl_THREAD):
Do not require AC_C_INLINE.
* modules/cond, modules/thread (Depends-on): Add extern-inline.
Diffstat (limited to 'lib/glthread/thread.h')
-rw-r--r-- | lib/glthread/thread.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/lib/glthread/thread.h b/lib/glthread/thread.h index 87e87006b8..c5bc0ae2e6 100644 --- a/lib/glthread/thread.h +++ b/lib/glthread/thread.h @@ -74,6 +74,11 @@ #include <errno.h> #include <stdlib.h> +_GL_INLINE_HEADER_BEGIN +#ifndef _GLTHREAD_THREAD_INLINE +# define _GLTHREAD_THREAD_INLINE _GL_INLINE +#endif + /* ========================================================================= */ #if USE_POSIX_THREADS @@ -360,7 +365,7 @@ typedef int gl_thread_t; extern "C" { #endif -static inline gl_thread_t +_GLTHREAD_THREAD_INLINE gl_thread_t gl_thread_create (void *(*func) (void *arg), void *arg) { gl_thread_t thread; @@ -397,4 +402,6 @@ gl_thread_create (void *(*func) (void *arg), void *arg) } #endif +_GL_INLINE_HEADER_END + #endif /* _GLTHREAD_THREAD_H */ |