37 lines
466 B
C
37 lines
466 B
C
// { dg-do run }
|
|
// prms-id: 12306
|
|
// a net report of the same problem as 12306
|
|
|
|
class a {
|
|
public:
|
|
int i;
|
|
};
|
|
|
|
class g : virtual public a {
|
|
};
|
|
|
|
class b : virtual public a {
|
|
int j;
|
|
};
|
|
|
|
class c : public g, public b {
|
|
};
|
|
|
|
class d {
|
|
public:
|
|
virtual class b* get() {return 0;}
|
|
};
|
|
|
|
class f : public d {
|
|
public:
|
|
virtual class b* get() {return &_c;}
|
|
c _c;
|
|
};
|
|
|
|
int main(void) {
|
|
f D;
|
|
b* bp=D.get();
|
|
D._c.i = 42;
|
|
return &D._c.i != &bp->i;
|
|
}
|