#include <iostream>
using namespace std;

class A
{
  public:
    virtual ~A(void) { cout << "A::~A(void)" << endl; }
};

class B : public A
{
  public:
    ~B(void) { cout << "B::~B(void)" << endl; }
};

int main(void)
{
  A *pA = new B;
  delete pA;
  return 0;
}
