https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58408
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- Note GCC does a decent job with: class Test { public: Test() = default; Test(char *b) { } int i; }; thread_local Test test; ----- CUT ---- GCC 7+ does not emit the "TLS wrapper function for test" at all.