This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 118c. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2025-10-18
The current wording of 13.8.4.1 [temp.point] does not define the point of instantiation of a variable template specialization. Presumably replacing the references to “static data member of a class template” with “variable template” in paragraphs 1 and 8 would be sufficient.
Additional note, July, 2017:
It has also been observed that there is no definition of the point of instantiation for an alias template. It is not clear that there is a need for normative wording for the point of instantiation of an alias template, but if not, a note explaining its absence would be helpful.
Proposed resolution:
Change in 13.8.4.1 [temp.point] paragraph 1 as follows:
Fora function template specialization, a member function template specialization, ora specializationforof amembertemplated function orstatic data member of a class templatetemplated variable, if the specialization is implicitly instantiated because it is referenced from within another template specialization and the context from which it is referenced depends on a template parameter, the point of instantiation of the specialization is the point of instantiation of the enclosing specialization. Otherwise, the point of instantiation for such a specialization immediately follows the namespace scope declaration or definition that refers to the specialization.
Change in 13.8.4.1 [temp.point] paragraph 8 as follows:
A specializationfor a function template, a member function template, or of a member function or static data member of a class templateof a templated function or templated variable may have multiple points of instantiations within a translation unit, and ...