The compiler switch
/kernel was introduced with Visual Studio 2012 (Windows 8).
https://msdn.microsoft.com/en-us/library/jj620896(v=vs.110)....
C code is considered legacy by Microsoft with C++ being the official systems programming language, hence why they dropped support for newer C versions, except for what is required by ANSI C++ standard.
https://herbsutter.com/2012/05/03/reader-qa-what-about-vc-an...
Our focus in Visual C++ is on making a world-class C++ compiler
Our primary goal is to support "most of C99/C11 that is a subset of ISO C++98/C++11."
We do not plan to support ISO C features that are not part of either C90 or ISO C++.
Also the future of Windows lies on UWP, and C is certainly not a way of writing UWP APIs, unless one enjoys low level COM Windows 95 style.
Finally, the remaining C code is slowly being migrated to C++
https://www.reddit.com/r/cpp/comments/4oruo1/windows_10_code...