struct TSomeClass {
TSomeClass(){}
TSomeClass(const TSomeClass&) noexcept {}
};
struct TCopier
{
template <class T>
TCopier(const T& t, int [noexcept(T(t))? 1 : -1] = 0) noexcept
{
T t2(t);
}
};
int main()
{
TSomeClass s;
TCopier c(s);
}
c3RydWN0IFRTb21lQ2xhc3MgewogICAgICAgIFRTb21lQ2xhc3MoKXt9CiAgICAgICAgVFNvbWVDbGFzcyhjb25zdCBUU29tZUNsYXNzJikgbm9leGNlcHQge30KfTsKCnN0cnVjdCBUQ29waWVyCnsKICAgICAgICB0ZW1wbGF0ZSA8Y2xhc3MgVD4KICAgICAgICBUQ29waWVyKGNvbnN0IFQmIHQsIGludCBbbm9leGNlcHQoVCh0KSk/IDEgOiAtMV0gPSAwKSBub2V4Y2VwdAogICAgICAgIHsKICAgICAgICAgICAgICAgIFQgdDIodCk7CiAgICAgICAgfQp9OwoKaW50IG1haW4oKQp7CiAgICAgICAgVFNvbWVDbGFzcyBzOwogICAgICAgIFRDb3BpZXIgYyhzKTsKfQo=