Let\'s assume I have a class with only one constructor:
class T { public: T(BigClass&& big) : big(std::move(big)) {} ... SomeBigClass };
It's not hard to write:
template T make_temp(const T& x) { return x; }
There might be a standard function that happens to do that by accident when called with one argument, but there isn't one designed for this unusual pattern.