Title
When do the arguments for a parameter pack end?
Status
open
Section
13.4 [temp.arg]
Submitter
Hubert Tong

Created on 2015-03-17.00:00:00 last changed 95 months ago

Messages

Date: 2016-02-15.00:00:00

Notes from the February, 2016 meeting:

The comments in the example reflect the intent.

Date: 2015-03-17.00:00:00

There does not appear to be a clear statement in the Standard that the first template parameter pack in a template parameter list corresponds to all remaining arguments in the template argument list. For example:

  template <int> struct A;

  template <int ...N, typename T> void foo(A<N> *..., T);
  void bar() {
   foo<0>(0, 0);      // okay: N consists of one template parameter, 0. T is deduced to int
   foo<0, int>(0, 0); // error: int does not match the form of the corresponding parameter N
  }

See also issue 2055.

History
Date User Action Args
2017-02-06 00:00:00adminsetmessages: + msg5826
2015-03-17 00:00:00admincreate