// PR c++/52422 // { dg-do compile { target c++11 } } template struct add_rval_ref { typedef T&& type; }; template<> struct add_rval_ref { typedef void type; }; template typename add_rval_ref::type create(); template().*create())() ) > auto f(int) -> char(&)[1]; template auto f(...) -> char(&)[2]; static_assert(sizeof(f(0)) != 1, "");