// { dg-do compile { target c++11 } } template T&& declval(); int main() { &declval(); // { dg-error "16:taking address of rvalue" } declval() = declval(); // { dg-error "15:using rvalue as lvalue" } declval()++; // { dg-error "15:using rvalue as lvalue" } --declval(); // { dg-error "17:using rvalue as lvalue" } declval() += 1; // { dg-error "rvalue" } }