// { dg-do run } | |
extern "C" int printf(const char *, ...); | |
class A { | |
public: | |
char *x; | |
}; | |
class B1:public virtual A { }; | |
class B2:public virtual A { }; | |
class C:public B1, public B2 { | |
public: | |
C() { } | |
}; | |
int main() { | |
C c; | |
printf("&c.x = %x\n", &c.x); | |
printf("&c.B1::x = %x\n", &c.B1::x); | |
printf("&c.B2::x = %x\n", &c.B2::x); | |
printf("&c.A::x = %x\n", &c.A::x); | |
if (&c.x != &c.B1::x | |
|| &c.x != &c.B2::x | |
|| &c.x != &c.A::x) | |
return 1; | |
} |