'identifier' : is not a legal base class
The identifier is not a class or structure but was used to derive a class.
Possible cause
Example
class B { }; class D : public B { }; // OK, D is derived from B typedef int I; class E : public I { }; // error, I is not a class