/* { dg-do compile } */ | |
/* { dg-options "-O2" } */ | |
struct A {}; | |
struct B { virtual A foo () const; }; | |
struct C { A foo () const; }; | |
struct D : virtual B { A foo () const { return A(); } }; | |
struct F : D { virtual int bar () const; }; | |
int F::bar () const { return 0; } | |
A C::foo () const { return A (); } |