[1]: https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n34...
That was the first issue. But this made me extremely fearful in the general case, as parsing a number incorrectly can have quite dire consequences when dealing with money for example. So suddenly accept any random string of numbers interspersed at random places with underscores is a Bad Thing, and not a tiny little implementation detail to push through the most popular programming language in the world without any discussion.
As long as Linux doesn't prevent user space code to be written in more recent C standards (which it obviously does) it's fine.
Apart from that, there's also the Visual Studio compiler team to blame because they didn't manage to catch up with C99 until around 2015 (and even then only an incomplete implementation), and only in 2019 decided to 'officially' support the latest C standards again.
In general it makes a lot more sense today to start new C projects in more recent standard versions then it was 5..10 years ago.