https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103949
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> --- >You did not address any of the standard violating behavior concerning >advertising thread support at all. There is no standard violating behavior with respect to thread support. Again the C/C++ standard don't say how you invoke the compiler. POSIX has a section on that but as I mentioned that is a different story all together. In the case of mingw, the problem is how GCC was configured: #ifndef THREAD_MODEL_SPEC /* Targets that define THREAD_MODEL_SPEC need to define __STDCPP_THREADS__ in their config/XXX/XXX-c.c themselves. */ if (cxx_dialect >= cxx11 && strcmp (thread_model, "single") != 0) cpp_define (pfile, "__STDCPP_THREADS__=1"); #endif Which means add -mthread will not fix the issue there. You need to get a GCC which is configured correctly to not to be single threaded.