#include <iostream>
#include <vector>
struct S {
S(const char* v_) : m_v(v_) {}
~S() {
std::cout << "destructing ~S(" << m_v << ")\n";
}
const char* m_v;
};
int main()
{
std::vector<S*> v;
v.push_back(new S("hello"));
v.clear();
v.push_back(new S("fin"));
}
ICAgICNpbmNsdWRlIDxpb3N0cmVhbT4KICAgICNpbmNsdWRlIDx2ZWN0b3I+CgogICAgc3RydWN0IFMgewogICAgICAgIFMoY29uc3QgY2hhciogdl8pIDogbV92KHZfKSB7fQogICAgICAgIH5TKCkgewogICAgICAgICAgICBzdGQ6OmNvdXQgPDwgImRlc3RydWN0aW5nIH5TKCIgPDwgbV92IDw8ICIpXG4iOwogICAgICAgIH0KICAgICAgICBjb25zdCBjaGFyKiBtX3Y7CiAgICB9OwoKICAgIGludCBtYWluKCkKICAgIHsKICAgICAgICBzdGQ6OnZlY3RvcjxTKj4gdjsKICAgICAgICB2LnB1c2hfYmFjayhuZXcgUygiaGVsbG8iKSk7CiAgICAgICAgdi5jbGVhcigpOwoKICAgICAgICB2LnB1c2hfYmFjayhuZXcgUygiZmluIikpOwogICAgfQo=