前にドラフトとか読んでその必要はあると思ったし、
実際VC++10βだと下のプログラムはlvalueと出力される。
#include <iostream>
#include <string>
const std::string f() {
return std::string();
}
void g(const std::string&) {
std::cout << "lvalue" << std::endl;
}
void g(std::string&&) {
std::cout << "rvalue" << std::endl;
}
int main() {
g(f());
}