#include <iostream>
#include <vector>
#include <type_traits>
struct S
{
S()
{
std::cout << __PRETTY_FUNCTION__ << '\n';
}
S(const S&) = delete;
S(S&&)
{
std::cout << __PRETTY_FUNCTION__ << '\n';
}
};
int main()
{
std::vector<S> s1(1);
std::vector<S> s2;
s2.push_back(std::move(s1[0]));
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8dHlwZV90cmFpdHM+CgpzdHJ1Y3QgUwp7CiAgICBTKCkKICAgIHsKICAgICAgICBzdGQ6OmNvdXQgPDwgX19QUkVUVFlfRlVOQ1RJT05fXyA8PCAnXG4nOwogICAgfQogICAgCiAgICBTKGNvbnN0IFMmKSA9IGRlbGV0ZTsKICAgIAogICAgUyhTJiYpCiAgICB7CiAgICAgICAgc3RkOjpjb3V0IDw8IF9fUFJFVFRZX0ZVTkNUSU9OX18gPDwgJ1xuJzsKICAgIH0KfTsKCmludCBtYWluKCkKewogICAgc3RkOjp2ZWN0b3I8Uz4gczEoMSk7CgogICAgc3RkOjp2ZWN0b3I8Uz4gczI7CiAgICBzMi5wdXNoX2JhY2soc3RkOjptb3ZlKHMxWzBdKSk7Cn0=