2581. Specialization of <type_traits> variable templates should be prohibited

Section: 21.3.3 [meta.type.synop] Status: C++17 Submitter: Tim Song Opened: 2016-01-07 Last modified: 2017-07-30

Priority: 0

View other active issues in [meta.type.synop].

View all other issues in [meta.type.synop].

View all issues with C++17 status.

Discussion:

21.3.3 [meta.type.synop]/1 only prohibits adding specializations of class templates in <type_traits>. Now that we have _v variable templates, this prohibition should apply to them as well.

[2016-02, Issues Telecon]

P0; move to Tentatively Ready.

Proposed resolution:

This wording is relative to N4567.

  1. Edit 21.3.3 [meta.type.synop]/1 as indicated:

    -1- The behavior of a program that adds specializations for any of the class templates defined in this subclause is undefined unless otherwise specified.