// { dg-do assemble } // g++ 1.36.1 bug 900121_05 // g++ allows unions to have base types (i.e. to be "derived") and it allows // other types to have unions as base types. Both cases are illegal. // g++ curently does not detect such errors. // Cfront 2.0 passes this test. // keywords: unions, inheritance struct s0 { int s0_member; }; union u0 : public s0 { /* { dg-error "" } union has base class */ int u0_member_0; int u0_member_1; }; union u1 { int u1_member_0; int u1_member_1; }; struct s1 : public u1 { /* { dg-error "base type" } */ int s1_member_0; }; int main () { return 0; }