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


1392. Explicit conversion functions for references and non-references

Section: 12.2.2.7  [over.match.ref]     Status: CD3     Submitter: Jason Merrill     Date: 2011-09-08

[Moved to DR at the October, 2012 meeting.]

In 12.2.2.6 [over.match.conv], dealing with non-reference initialization, direct initialization considers as candidate functions only those that

yield type T or a type that can be converted to type T with a qualification conversion

By contrast, 12.2.2.7 [over.match.ref], dealing with reference binding, requires only that the type returned be reference-compatible with the target, permitting both qualification conversions and derived-to-base conversions. This discrepancy is presumably unintentional.

Proposed resolution (February, 2012):

Change 12.2.2.7 [over.match.ref] paragraph 1 as follows:

...the candidate functions are selected as follows: