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


2648. Correspondence of surrogate call function and conversion function

Section: 12.4.4  [over.call]     Status: C++23     Submitter: CA     Date: 2022-11-03

P2720R0 comment CA 063

[Accepted as a DR at the November, 2022 meeting.]

Post-Prague "editorial" change cplusplus/draft#3625 removed the normative text supporting the interpretation that surrogate call functions, when chosen, call the functions they were formed from.

Proposed resolution (approved by CWG 2022-11-08):

Change in 12.4.4 [over.call] paragraph 1 as follows:

If a surrogate call function for a conversion function named operator conversion-type-id is selected, let e be the result of invoking the corresponding conversion operator function on the postfix-expression; is invoked the expression is interpreted as
postfix-expression . operator conversion-type-id () e ( expression-listopt )
Otherwise, ...