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
[Accepted as a DR at the June, 2023 meeting.]
Subclause 12.2.2.3 [over.match.oper] paragraph 5 specifies:
For the built-in assignment operators, conversions of the left operand are restricted as follows:
- no temporaries are introduced to hold the left operand, and
- no user-defined conversions are applied to the left operand to achieve a type match with the left-most parameter of a built-in candidate.
The first bullet is redundant, because standard conversion sequences cannot bind "vq T&" (the type of the first parameter of a built-in assignment operator) to a temporary.
Proposed resolution (approved by CWG 2023-03-30):
Change in 12.2.2.3 [over.match.oper] paragraph 5 as follows:
For the first parameter of the built-in assignment operators, only standard conversion sequences (12.2.4.2.2 [over.ics.scs]) are considered.conversions of the left operand are restricted as follows:
no temporaries are introduced to hold the left operand, andno user-defined conversions are applied to the left operand to achieve a type match with the left-most parameter of a built-in candidate.