'name' : is not a legal base class
The class is derived from a type name defined by a typedef statement.
Example
typedef unsigned long ulong; class C : public ulong {}; // error