3 // Origin: Mark Mitchell <mark@codesourcery.com>
5 #if defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100
20 // In S3, the S1 instance is allocated first at offset zero. The S2
21 // instance has to be allocated at a subsequent offset; it's first
22 // part is also an S1.
24 struct S3 : public S1, public S2
33 // In S4, in contrast to S3, S2 is allocated first, and S1 can be
34 // allocated on top of S4.
36 struct S5 : public S2, public S1, public S4
40 // The T classes are by-hand layouts that should be equivalent to the
57 if (sizeof (S3) != sizeof (T3))
59 else if (sizeof (S5) != sizeof (T5))
63 #else /* !(defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100) */
69 #endif /* !(defined (__GXX_ABI_VERSION) && __GXX_ABI_VERSION >= 100) */