diff options
Diffstat (limited to 'tests/glthread')
-rw-r--r-- | tests/glthread/thread.c | 10 | ||||
-rw-r--r-- | tests/glthread/thread.h | 12 | ||||
-rw-r--r-- | tests/glthread/yield.h | 2 |
3 files changed, 17 insertions, 7 deletions
diff --git a/tests/glthread/thread.c b/tests/glthread/thread.c index 0b923c04..9c8c3035 100644 --- a/tests/glthread/thread.c +++ b/tests/glthread/thread.c @@ -1,5 +1,5 @@ /* Creating and controlling threads. - Copyright (C) 2005-2022 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -139,9 +139,11 @@ gl_thread_self (void) /* Memory allocation failed. There is not much we can do. Have to busy-loop, waiting for the availability of memory. */ { - struct timespec ts; - ts.tv_sec = 1; - ts.tv_nsec = 0; + struct timespec ts = + { + .tv_sec = 1, + .tv_nsec = 0 + }; thrd_sleep (&ts, NULL); } } diff --git a/tests/glthread/thread.h b/tests/glthread/thread.h index 6d98f2d6..748bb045 100644 --- a/tests/glthread/thread.h +++ b/tests/glthread/thread.h @@ -1,5 +1,5 @@ /* Creating and controlling threads. - Copyright (C) 2005-2022 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as @@ -70,6 +70,11 @@ #ifndef _GLTHREAD_THREAD_H #define _GLTHREAD_THREAD_H +/* This file uses _Noreturn, HAVE_THREADS_H, HAVE_PTHREAD_ATFORK. */ +#if !_GL_CONFIG_H_INCLUDED + #error "Please include config.h first." +#endif + #include <errno.h> #include <stdlib.h> @@ -125,6 +130,9 @@ extern _Noreturn void gl_thread_exit (void *return_value); # include <pthread.h> +/* Get intptr_t. */ +# include <stdint.h> + /* On IRIX, pthread_atfork is declared in <unistd.h>, not in <pthread.h>. */ # if defined __sgi # include <unistd.h> @@ -228,7 +236,7 @@ extern const gl_thread_t gl_null_thread; # define gl_thread_self() \ (pthread_in_use () ? pthread_self () : (pthread_t) 0) # define gl_thread_self_pointer() \ - (pthread_in_use () ? (void *) pthread_self () : NULL) + (pthread_in_use () ? (void *) (intptr_t) (pthread_t) pthread_self () : NULL) # endif # define gl_thread_exit(RETVAL) \ (void) (pthread_in_use () ? (pthread_exit (RETVAL), 0) : 0) diff --git a/tests/glthread/yield.h b/tests/glthread/yield.h index f74267ea..29105cc2 100644 --- a/tests/glthread/yield.h +++ b/tests/glthread/yield.h @@ -1,5 +1,5 @@ /* Yielding the processor to other threads and processes. - Copyright (C) 2005-2022 Free Software Foundation, Inc. + Copyright (C) 2005-2024 Free Software Foundation, Inc. This file is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as |