Compiler Error C2681
'type' : invalid expression type for name
A casting operator tried to convert from an invalid type. For example, if you use the dynamic_cast operator to convert an expression to a pointer type, the source expression must be a pointer.
The following sample generates C2681:
// C2681.cpp
class A { virtual void f(); };
void g(int i) {
A* pa;
pa = dynamic_cast<A*>(i); // C2681
}