// { dg-do run }
#include "lib.h"
struct Derived: public Base
{
virtual ~Derived()
{ printf("In Derived destructor\n"); }
};
int main()
Derived * d = new Derived;
Destroy(d);
Base * pp = GetPrivate();
delete pp; // Virtual call #2
}