------- Comment #1 from reichelt at gcc dot gnu dot org 2007-05-27 21:59 ------- Oops, I hosed the last line of the testcase. The testcase should read:
======================================================= template<int> struct A; template<typename T> void foo (A<&T::template i>); ======================================================= Btw, a slightly modified version causes two garbled diagnostics: ==================================================== template<typename> struct A; template<typename T> void foo (A<&T::template i>); ==================================================== bug.cc:3: error: '#'unbound_class_template' not supported by dump_decl#<declaration error>' is not a template bug.cc:3: error: type/value mismatch at argument 1 in template parameter list for 'template<class> struct A' bug.cc:3: error: expected a type, got '& T::#'unbound_class_template' not supported by pp_cxx_unqualified_id#' -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32112