'identifier1' : 'identifier2' is already a direct base class
A class or structure appears more than once in a list of base classes.
A direct base is one mentioned in the base list. An indirect base is a base class of one of the classes in the base list.
A class cannot be specified as a direct base class more than once. A class can be used as an indirect base class more than once.
Example
class A { }; class B : public A, public A { }; // error class C : public A { }; class D : public A { }; class E : public C, public D { }; // OK, contains two As