Compiler Error C2547

illegal cast of overloaded function

A pointer to a function type was converted to an overloaded type.

Conversion of a pointer to a function into a pointer to an overloaded function is not allowed.

The following is an example of this error:

int func();
int func( int );
( int (*)() )func;      // error, func is overloaded
int func2();
( void (*)() )func2;    // OK, func2 is not overloaded