This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 115d. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2024-10-26
[Adopted at the February, 2016 meeting.]
According to 13.8.3.2 [temp.dep.type] paragraph 9, a type is dependent if it is
denoted by decltype(expression), where expression is type-dependent (13.8.3.3 [temp.dep.expr]).
However, 13.6 [temp.type] paragraph 2 says,
If an expression e involves a template parameter, decltype(e) denotes a unique dependent type. Two such decltype-specifiers refer to the same type only if their expressions are equivalent (13.7.7.2 [temp.over.link]). [Note: however, it may be aliased, e.g., by a typedef-name. —end note]
These seem to be in need of reconciliation.
Proposed resolution (January, 2016):
Change 13.6 [temp.type] paragraph 2 as follows:
If an expression einvolves a template parameteris type-dependent (13.8.3.3 [temp.dep.expr]), decltype(e) denotes a unique dependent type. Two such decltype-specifiers refer to the same type only if their expressions are equivalent (13.7.7.2 [temp.over.link]). [Note: however,itsuch a type may be aliased, e.g., by a typedef-name. —end note]