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

2024-12-19


2435. Alias template specializations

Section: 13.9  [temp.spec]     Status: open     Submitter: Krystian Stasiowski     Date: 2019-09-28

According to 13.9 [temp.spec] paragraph 4,

An instantiated template specialization can be either implicitly instantiated (13.9.2 [temp.inst]) for a given argument list or be explicitly instantiated (13.9.3 [temp.explicit]). A specialization is a class, variable, function, or class member that is either instantiated or explicitly specialized (13.9.4 [temp.expl.spec]).

The definition of “specialization” does not cover alias templates, although the terms “specialization of an alias template” and ”alias template specialization” are used in 13.7.8 [temp.alias]. (Note that there are differences between alias specializations and the specializations mentioned here; in particular, an alias template cannot be explicitly specialized, and it is not the result of instantiation (paragraph 1) but simply of substitution (13.7.8 [temp.alias] paragraph 2).)