Compiler Warning (level 1) C4217

nonstandard extension used : function declaration from a previous block

If a function is not visible in the current scope, Microsoft C/C++ finds function declarations that would not otherwise be available.

The following example causes this warning:

void func1()
{
   void func2();
}
void func3()
{
   func2();   // warning
}

This extension can prevent your code from being portable to other compilers and will generate an error under the /Za command-line option.