Source code

Revision control

Copy as Markdown

Other Tools

namespace std {
template <typename _Tp>
struct remove_reference {
typedef _Tp type;
};
template <typename _Tp>
constexpr typename std::remove_reference<_Tp>::type &&move(_Tp &&__t) {
return static_cast<typename std::remove_reference<_Tp>::type &&>(__t);
}
} // namespace std
struct TriviallyCopyable {
int i;
};
class A {
public:
A() {}
A(const A &rhs) {}
A(A &&rhs) {}
};
void f(TriviallyCopyable) {}
void g() {
TriviallyCopyable obj;
f(std::move(obj));
}
A f5(const A x5) {
return std::move(x5);
}