rt_gccstream/gcc/testsuite/g++.old-deja/g++.mike/p10849a.C

35 lines
421 B
C

// { dg-do run }
// prms-id: 10849
struct A
{
int comm;
A(int i) : comm(i) { }
};
struct S1 { char c1; };
struct B : public S1, public A
{
B(int i) : A(i) { }
};
struct C : public A
{
C(int i) : A(i) { }
};
struct D : public B, public C
{
virtual int g() {
int D::*pmd = (int C::*)&C::comm;
return (this->*pmd) == 42;
}
D() : B(41), C(42) { }
} d;
int main() {
if (! d.g())
return 1;
}