1 // { dg-options "--std=c++0x" }
7 { return static_cast<_Tp&&>(__t); }
12 T(S && s_) : s(movel(s_)) {}
13 S && get() { return movel(s); }
14 operator S&&() { return movel(s); }
19 void named(S const &) {}
22 void unnamed(S const &);
30 named(s); // variable reference
31 named(p); // parameter reference
32 named(t.s); // class member access
34 unnamed(t.get()); // function return
35 unnamed(t); // implicit conversion
36 unnamed(static_cast<S&&>(s)); // cast to rvalue
37 unnamed(static_cast<T&&>(t).s2); // cast to rvalue