The following code fails with emscripten right now: ``` pthread_key_t k; pthread_key_create(&k, NULL); assert(pthread_getspecific(k) == 0); // fine pthread_setspecific(k, (void*)1); pthread_key_delete(k); pthread_key_create(&k, NULL); assert(pthread_getspecific(k) == 0); // fails ``` According to POSIX specification, after creation of a thread local key, the value should be zero on key creation on all threads. See: http://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_key_create.html