------- Comment #4 from jason at gcc dot gnu dot org 2009-04-05 04:20 ------- I agree that the working paper says that this should work, but I'm not sure why the language should specify the use of variadics there; why not
template <Allocator Alloc, class First, class Second> requires ConstructibleWithAllocator<Types, Alloc, const First&> && ConstructibleWithAllocator<Types, Alloc, const Second&> tuple(allocator_arg_t, const Alloc& a, const pair<First, Second>&); instead? The n2555 fix is needed for template template parameters, but in cases like this where we know what template we're dealing with I don't see why it's a problem to just pass in the right number of arguments. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35722