blob: 6f966f211ca97b7cf30611ea661a4819cb33f951 [file] [log] [blame]
// { dg-do run }
// GROUPS passed
extern "C" int printf (const char *, ...);
extern "C" void exit(int);
class A {
public:
virtual ~A() {
printf("FAIL\n");
exit (1);
}
};
class B : public A {
public:
virtual ~B() {
printf("PASS\n");
exit (0);
}
};
int main() {
B b;
A *ap = &b;
ap->~A(); // This should call the destructor virtually.
printf("FAIL\n");
return 1;
}