S const && ucr() { return movel(l); } // unnamed const rvalue reference (ucr)
// Generated by overload.py template<typename _Tp> inline _Tp&& movel(_Tp& __t) { return static_cast<_Tp&&>(__t); } struct S{}; S l; // lvalue (l) S const cl = l; // const lvalue (cl) S r() { return l; } // rvalue (r) S const cr() { return l; } // const rvalue (cr) S & nl = l; // named lvalue reference (nl) S const & ncl = l; // named const lvalue reference (ncl) S && nr = movel(l); // named rvalue reference (nr) S const && ncr = movel(l); // named const rvalue reference (ncr) S & ul() { return l; } // unnamed lvalue reference (ul) S const & ucl() { return l; } // unnamed const lvalue reference (ucl) S && ur() { return movel(l); } // unnamed rvalue reference (ur) S const && ucr() { return movel(l); } // unnamed const rvalue reference (ucr) void l0001(const S&&) {} // { dg-message "" } void l0010(S&&) {} // { dg-message "" } void l0011(S&&) {} // { dg-message "" } void l0011(const S&&); void l0100(const S&) {}
S && ur() { return movel(l); } // unnamed rvalue reference (ur)
A&& source() {static A a; return movel(a);}