What mechanism is involved, if when returning types, that are constructible from initializer lists, I don\'t specify the type I am returning, as in:
std::arr
The mechanism is just a constructor:
struct X {}; struct Y { Y(X); }; Y f() { X x; return x; }