https://gcc.gnu.org/bugzilla/show_bug.cgi?id=84796

--- Comment #9 from Patrick Palka <ppalka at gcc dot gnu.org> ---
I suppose one way to make this work is to eagerly expand pack expansions in
member template parameter lists when instantiating a class template. 
Consequently we'd now reject the below testcase due to conflicting overloads of
A<int>::f (as we already do if Ts is a non-pack parameter), which seems
desirable?

  template<class... Ts>
  struct A {
    template<int> void f();
    template<Ts...> void f();
  };

  template struct A<int>;

Reply via email to