nonstandard extension used : function given file scope
Under the default /Ze command-line option, Microsoft C/C++ gives function declarations file scope.
void func1()
{
extern int func2( double );
}
void main( void )
{
func2( 4 ); // /Ze passes 4 as type double
} // /Za passes 4 as type int
This extension can prevent your code from being portable to other compilers.