1// { dg-do run } 2struct S0 { 3 virtual int is_kind_of_S1 () const { return 0; } 4 virtual void dummy () { } 5}; 6 7struct S1 : virtual public S0 { 8 virtual int is_kind_of_S1 () const { return 1; } 9 virtual void dummy () { } 10}; 11 12struct S2 : virtual public S0 { 13 virtual void dummy () { } 14}; 15 16struct S3 : public S2, public S1 { 17 virtual void dummy () { } 18}; 19 20static struct S0 *var = new S3 (); 21 22int main () { 23 if (var->is_kind_of_S1() != 1) 24 return 1; 25 return 0; 26} 27