Official Visual Studio Support for MinGW, Cygwin, and MSYS2
blogs.msdn.microsoft.com
blogs.msdn.microsoft.com
1. Either use Mingw-W64, which is "closer" to WinAPI for compilation for Windows platforms, also more actively developed
2. Use the better build system. So far, I think Meson (+ Ninja to actually build) is very easy and fast even for the complex projects. Moreover it works great on both *nix and Windows systems - it can generate VS Projects, if you need (but I recommend Ninja still - it's so much faster), and you can use not the full Visual Studio installation, but just a Visual C++ Build Tools, with compilers only.
http://en.cppreference.com/w/cpp/compiler_support
Not everyone is stuck only with the big three.
GCC and Visual have a slightly different release cycle. GCC can move the minor version whenever they please and they do. Microsoft only add language changes in a new major releases, and sometimes port it back in a visual studio update pack, which are more spaced in time.
In both cases, the new release breaks the C++ ABI so updating is not something to be taken lightly.
There is also the debate of what "implemented" means. GCC can be obtained in alpha and beta, so you can test new features early long before they are finished or included in a regular release. All things considered, MSVC is maybe one year later on the latest cool thing. Not much.
GCC - https://gcc.gnu.org/wiki/C11Status
Clang - https://clang.llvm.org/compatibility.html#c
Moreover, they enabled C11 by default.