Created on 2024-09-08.00:00:00 last changed 3 months ago
Proposed resolution:
This wording is relative to N4988.
Modify [char.traits.require] as indicated:
-2- The class template
template<class charT> struct char_traits;is provided in the header <string> as a basis for explicit and partial specializations. The effect of instantiating the primary template of char_traits is unspecified and possibly makes the program ill-formed.
Currently, only explicit specializations of std::char_traits are specified in the standard. Nothing is specified for the primary template except that it's not marked "not defined".
Given some implementations provide the definition of the primary template (perhaps as an extension), it might be better to explicitly say that instantiation of the primary template has unspecified effect. Also, it seems outdated to say "explicit specializations" as partial specializations are possible since C++20.History | |||
---|---|---|---|
Date | User | Action | Args |
2024-09-08 11:13:32 | admin | set | messages: + msg14364 |
2024-09-08 00:00:00 | admin | create |