This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of New status.
enable_if, result_of, common_type and aligned_storage do not meet the definition
of TransformationTraitSection: 21.3.2 [meta.rqmts] Status: New Submitter: Tim Song Opened: 2016-12-14 Last modified: 2017-02-02
Priority: 3
View all other issues in [meta.rqmts].
View all issues with New status.
Discussion:
[meta.rqmts]/3 defines TransformationTrait as follows:
A
TransformationTraitmodifies a property of a type. It shall be a class template that takes one template type argument and, optionally, additional arguments that help define the modification. It shall define a publicly accessible nested type namedtype, which shall be a synonym for the modified type.
enable_if, result_of and common_type do not necessarily "define a publicly accessible nested type named type".
aligned_storage takes no template type argument (it only has two non-type parameters). Yet [meta.trans]/2
says that they are all TransformationTraits.
decay, it's not clear that any of the traits in [meta.trans.other]
could really be described as "modify[ing] a property of a type".
[2017-01-27 Telecon]
Priority 3
Proposed resolution: