In c++ if I have a diamond class hierarchy as follows:
AbstractBaseClass /\\ / \\ ConcreteClass AbstractBaseClassExtended