Microsoft Visual Studio is notoriously bad at the modern C standards, and is pretty much stuck at C89. The 2013 version improved on this a bit, but nothing much.
I believe it indeed still takes undeclared functions to implicitly return int
. The IDE just follows the compiler in this regard (which it should...).
What you probably already know is that you can compile some but not all C code as C++, and then most C99 rules like the one you're on about here come into play. Just save your source file as .cpp
or equivalent and presto.
That, or use a decent IDE that has support for the language you use.