// { dg-do compile { target c++11 } } template struct same_type; template struct same_type {}; template struct S { typedef T const (&type)(); }; void f() { // initial implementation didn't ignore const qualifier on // reference, resulting in a typedef of 'const int& (&)()' same_type::type, int&(&)()>(); }