+++ /dev/null
-extern "C" void abort ();
-
-struct A {
- union {
- int a;
- double b;
- int d;
- };
- int c;
-};
-
-struct B : public A {
- union {
- double a;
- void *c;
- };
- float b;
- int e;
-};
-
-int main ()
-{
- struct B b;
-
- b.a = 1.5;
- b.b = 2.5;
- b.d = 1;
- b.e = 2;
- if (b.a != 1.5 || b.b != 2.5 || b.d != 1 || b.e != 2)
- abort ();
- b.c = &b.a;
- b.d = b.e;
- if (b.c != &b.a || b.d != 2)
- abort ();
- return 0;
-}