#include <iostream>
struct A
{
~A() { throw 2; }
};
struct B: A
{
int x;
};
struct C
{
int x;
};
int main()
{
try {
A a;
}
catch (...) {
std::cout << "OK\n";
std::cout << (sizeof(B) == sizeof(C));
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgogCnN0cnVjdCBBCnsKICAgIH5BKCkgeyB0aHJvdyAyOyB9Cn07CiAKc3RydWN0IEI6IEEKewogICAgaW50IHg7Cn07CnN0cnVjdCBDCnsKICAgIGludCB4Owp9OwogCmludCBtYWluKCkKewogICAgdHJ5IHsKICAgICAgICBBIGE7CiAgICB9CiAgICBjYXRjaCAoLi4uKSB7CiAgICAgICAgc3RkOjpjb3V0IDw8ICJPS1xuIjsKICAgICAgICBzdGQ6OmNvdXQgPDwgKHNpemVvZihCKSA9PSBzaXplb2YoQykpOwogICAgfQp9