http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60645
--- Comment #4 from Jonathan Wakely <redi at gcc dot gnu.org> --- I would not be opposed to a patch improving error handling of such functions, the calls in atexit_thread.cc are certainly allowed to fail and we should handle it. What is the right thing to do there though? If __gthread_key_create() fails then the once flag will still be set, so key_s::key_s() will never be run again, and the __cxa_thread_atexit feature is basically unusable. Is that acceptable?