Title
Confusing wording for deduction from a type
Status
open
Section
12.2.2.9 [over.match.class.deduct]
Submitter
Dawn Perchik

Created on 2019-08-06.00:00:00 last changed 20 months ago

Messages

Date: 2021-02-24.00:00:00

In 12.2.2.9 [over.match.class.deduct] paragraph 3 we read:

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 (13.8.3.2 [temp.dep.type]), AA<T> matches the partial specialization.

The relationship between A, AA and its partial specialization, and the argument list of A is not clear. An example would be very helpful here. Also, using a different name than A would help, since A is used in close proximity to this wording to denote an alias template, while this wording applies to both class and alias templates. Finally, there should be a cross-reference to _N4868_.13.7.6.2 [temp.class.spec.match] for matching the partial specialization.

History
Date User Action Args
2019-08-06 00:00:00admincreate