illegal cast from pointer to member
A pointer to a member of a class, structure, or union is cast to a different type.
Example
class C { public: int i; operator int*() { return &i; } }; int C::* cpi = (int*)&C::i; // error int C::* cpi2 = &C::i; // OK