/* { dg-do run } */ extern "C" void abort (); struct B *b; struct B { virtual void f () { } ~B() { b->f(); } }; struct D : public B { virtual void f () { abort (); } }; int main () { D d; b = &d; return 0; }