This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 119a. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.
2025-12-20
[Moved to DR at 10/01 meeting.]
The main defect is in the library, where the binder template caneasily lead to reference-to-reference situations.
Proposed resolution (04/01):
If a typedefTD names a type "reference tocv1S," an attempt to create the type"reference tocv2TD" creates the type"reference tocv12"S," wherecv12 is theunion of the cv-qualifierscv1 andcv2.Redundant qualifiers are ignored. [Example:
int i; typedef int& RI; RI& r = i; // rhas the type int& const RI& r = i; // rhas the type const int&—end example]
If atemplate-argument for atemplate-parameterT names a type "reference tocv1S,"an attempt to create the type "reference tocv2T"creates the type "reference tocv12S," wherecv12 is the union of the cv-qualifierscv1 andcv2. Redundant cv-qualifiers are ignored.[Example:
template <class T> class X { f(const T&); /* ... */ }; X<int&> x; // X<int&>::fhas the parameter type const int&—end example]
Attempting to createa reference to a reference type orareference tovoid.
(See also paper J16/00-0022 = WG21 N1245.)