It's kinda funny that people are still arguing about C99 adoption considering that C11/C17 are more widely supported than C99 is (due to it making some features optional). Microsoft's compiler supports C11.
Honestly I find it hard to understand sticking with C89. Even just the ability to sink variable declarations to the point of first assignment can make code a lot more readable and maintainable.
> Honestly I find it hard to understand sticking with C89.
C89 is the only C version with almost universal support across platforms and compilers (including ancient one). Requiring C99 may break backward compatibility and breaking compatibility, even just for a tiny fraction of users, is a lot worse than where to define variables.
Honestly I find it hard to understand sticking with C89. Even just the ability to sink variable declarations to the point of first assignment can make code a lot more readable and maintainable.