Bug has been fixed: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83562 probably after 7.5.0, but gcc 7.5.0+original mingw32 implementation seems not affected. --- boost_1_79_0/boost/config/compiler/gcc.hpp.orig 2022-06-04 10:01:44.039749227 +0200 +++ boost_1_79_0/boost/config/compiler/gcc.hpp 2022-06-04 16:26:51.547898441 +0200 @@ -323,7 +323,7 @@ # define BOOST_FALLTHROUGH __attribute__((fallthrough)) #endif -#if (__GNUC__ < 11) && defined(__MINGW32__) && !defined(__MINGW64__) +#if (__GNUC__ < 8) && defined(__MINGW32__) && !defined(__MINGW64__) // thread_local was broken on mingw for all 32bit compiler releases prior to 11.x, see // https://sourceforge.net/p/mingw-w64/bugs/527/ // https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83562