Let\'s say I got a Foo class containing an std::vector constructed from std::unique_ptr objects of another class, Bar.
Foo
std::vector
std::unique_ptr
Bar
Confusing as it might seem, an rvalue-reference binds to an rvalue, but used as an expression is an lvalue.