C++ Logo

std-discussion

Advanced search

Is an alias template with default arguments deducible for the purpose of CTAD?

From: Tam S. B. <cpplearner_at_[hidden]>
Date: Thu, 11 Feb 2021 09:43:04 +0000
[over.match.class.deduct]/3 ( http://eel.is/c++draft/over.match.class.deduct#3 ): > The arguments of a template A are said to be deducible from a type T if, given a class template > > template <typename> class AA; > > with a single partial specialization whose template parameter list is that of A and whose template argument > list is a specialization of A with the template argument list of A ([temp.dep.type]), AA<T> matches the partial > specialization. But since the template parameter list of a partial specialization cannot contain default arguments ([temp.spec.partial.general]/(9.3)), how does this produce "a single partial specialization whose template parameter list is that of A", when `A` has default arguments?

Received on 2021-02-11 03:43:07