threads: kill clang warnings about struct/class Thread
[cdsspec-compiler.git] / include / threads.h
index 641b0cf010927919f349d177110abb7871cf8715..f38be0ab96ecf973873ffc1c03576da0dad47c28 100644 (file)
@@ -5,17 +5,27 @@
 #ifndef __THREADS_H__
 #define __THREADS_H__
 
+/* Forward declaration */
+#ifdef __cplusplus
+typedef class Thread *__thread_identifier;
+#else
+/* For C, we just need an opaque pointer */
+typedef void *__thread_identifier;
+#endif
+
 #ifdef __cplusplus
 extern "C" {
 #endif
 
        typedef void (*thrd_start_t)(void *);
 
-       typedef int thrd_t;
+       typedef struct {
+               __thread_identifier priv;
+       } thrd_t;
 
        int thrd_create(thrd_t *t, thrd_start_t start_routine, void *arg);
        int thrd_join(thrd_t);
-       int thrd_yield(void);
+       void thrd_yield(void);
        thrd_t thrd_current(void);
 
        int user_main(int, char**);