| #include <threads.h> | |
| int __pthread_key_create(tss_t *, void (*)(void *)); | |
| int tss_create(tss_t *tss, tss_dtor_t dtor) | |
| { | |
| /* Different error returns are possible. C glues them together into | |
| * just failure notification. Can't be optimized to a tail call, | |
| * unless thrd_error equals EAGAIN. */ | |
| return __pthread_key_create(tss, dtor) ? thrd_error : thrd_success; | |
| } |