This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 114a. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.

2024-04-18


1386. Explicitly-specified partial argument list with multiple parameter packs

Section: 13.10.2  [temp.arg.explicit]     Status: NAD     Submitter: James Widman     Date: 2011-09-01

Given

    template<class T, class U> struct A { };
    template<class... T, class ... U> void f( A<T,U>...p);

    void g() {
        f<int>(
            A<int,unsigned>(),
            A<short,unsigned short>()
            );
    }

I would expect this to work, but all the recent compilers I tried reject it, indicating deduction failure.

Rationale (April, 2013):

This is well-formed.