#include <iostream>
struct A
{
~A() {
std::cout << "~A()\n";
}
};
struct B
{
A a;
~B() {
std::cout << "~B()\n";
a.~A();
}
};
int main()
{
B b;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgoKc3RydWN0IEEKewoJfkEoKSB7CgkJc3RkOjpjb3V0IDw8ICJ+QSgpXG4iOwoJfQp9OwoKc3RydWN0IEIKewoJQSBhOwoJCgl+QigpIHsKCQlzdGQ6OmNvdXQgPDwgIn5CKClcbiI7CgkJYS5+QSgpOwoJfQp9OwoKaW50IG1haW4oKQp7CglCIGI7Cn0=