You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Table 9 ("simple-type-specifiers and the types they specify") describes how simple-type-specifiers are mapped into types, but it is missing an entry for decltype(auto). Presumably this should say something like "placeholder for the type of the initializer (7.1.6.4)".
We also have a conflict between 7.1.6.2/2 and 7.1.6.4/1. The former says that only auto is "a placeholder for a type to be deduced", whereas the latter says that both "are used to designate a placeholder type that will be replaced later by deduction from an initializer". decltype(auto) does not perform deduction, so this seems wrong.
One possible, but broader, change:
Change 7.1.6.2/4 to define "the declared type of an expression e" instead of "the type denoted by decltype(e)".
Change Table 9 to specify that decltype(e) gives "the declared type of e".
Extend Table 9 to specify that decltype(auto) gives "the declared type of the initializer, as described in 7.1.6.4".
Fix up 7.1.6.4 to match.
The text was updated successfully, but these errors were encountered:
Table 9 ("simple-type-specifiers and the types they specify") describes how simple-type-specifiers are mapped into types, but it is missing an entry for
decltype(auto)
. Presumably this should say something like "placeholder for the type of the initializer (7.1.6.4)".We also have a conflict between 7.1.6.2/2 and 7.1.6.4/1. The former says that only
auto
is "a placeholder for a type to be deduced", whereas the latter says that both "are used to designate a placeholder type that will be replaced later by deduction from an initializer".decltype(auto)
does not perform deduction, so this seems wrong.One possible, but broader, change:
e
" instead of "the type denoted bydecltype(e)
".decltype(e)
gives "the declared type ofe
".decltype(auto)
gives "the declared type of the initializer, as described in 7.1.6.4".The text was updated successfully, but these errors were encountered: