Memory Layout of a Multiply Inherited Object is Unspecified
When multiple inheritance is used, the memory layout of such an object is implementation-dependent. The compiler can rearrange the order of the inherited subobjects to improve memory alignment. In addition,