Skip to content

CWG3073 [over.match.ref] Dependence of R on T2 is unclear #762

Description

@t3nsor

Full name of submitter: Brian Bi

Issue description: It is not clear whether the set R defined in [over.match.ref]/1.1 is a function of T2 or is the union of the sets computed from all such T2.

Suggested resolution: Edit [over.match.ref]/1.1 as follows:

  • Let R be athe 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 where having the form "cv2 T2" or "reference to cv2 T2" where “cv1 T” is reference-compatible ([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 ([conv.qual]); otherwise there are none.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions