We recommend using Visual Studio 2017

Compiler Warning (level 4) C4205


The latest version of this topic can be found at Compiler Warning (level 4) C4205.

nonstandard extension used : static function declaration in function scope

With Microsoft extensions (/Ze), static functions can be declared inside another function. The function is given global scope.

// C4205.c  
// compile with: /W4  
void func1()  
   static int func2();  // C4205  
int main()  

Such initializations are invalid under ANSI compatibility (/Za).