nonstandard extension used : 'token' : conversion from 'type' to 'type'
This type conversion is not allowed by the C++ draft standard, but it is permitted here as an extension. This warning is always followed by at least one line of explanation describing the language rule being violated.
For example:
struct C { C(); };
void func(void)
{
//Yields: warning C4239: nonstandard extension used :
//'initializing' : conversion from 'struct C' to
//'struct C&'
//A reference that is not to 'const' cannot be bound
//to a non-lvalue
C & rC = C();
}