#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; | |
} |