Title
Dependence of R on T2 is unclear
Status
open
Section
12.2.2.7 [over.match.ref]
Submitter
Brian Bi

Created on 2025-09-15.00:00:00 last changed 3 weeks ago

Messages

Date: 2025-09-22.19:37:03

Suggested resolution:

Remove the top-level bulleting in 12.2.2.7 [over.match.ref] bullet 1.1 and change as follows:

... Let R be a the set of all types including
  • “lvalue reference to cv2 T2” lvalue reference types (when converting to an lvalue) and
  • “cv2 T2” and “rvalue reference to cv2 T2” non-reference types and rvalue reference types (when converting to an rvalue or an lvalue of function type)
for any T2. The permissible types for non-explicit conversion functions are the members of R having the form "cv T2" or "reference to cv2 T2" where “cv1 T” is reference-compatible (9.5.4 [dcl.init.ref]) with “cv2 T2”. For direct-initialization, the permissible types for explicit conversion functions are the members of R having the form "cv2 T2" or "reference to cv2 T2" where T2 can be converted to type T with a (possibly trivial) qualification conversion (7.3.6 [conv.qual]); otherwise there are none.
Date: 2025-09-15.00:00:00

(From submission #762.)

It is unclear whether the set R defined in 12.2.2.7 [over.match.ref] bullet 1.1 is a function of T2 or is the union of the sets computed from all such T2.

History
Date User Action Args
2025-09-22 19:37:03adminsetmessages: + msg8115
2025-09-15 00:00:00admincreate