Title
Reference overload tiebreakers should apply to rvalue references
Status
cd3
Section
12.2.4.3 [over.ics.rank]
Submitter
Michael Wong

Created on 2011-10-26.00:00:00 last changed 130 months ago

Messages

Date: 2012-10-15.00:00:00

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

Date: 2012-02-15.00:00:00

Proposed resolution (February, 2012):

Change 12.2.4.3 [over.ics.rank] bullet 4.3 as follows:

  • If class B is derived directly or indirectly from class A and class C is derived directly or indirectly from B,

    • conversion of C* to B* is better...

    • binding of an expression of type C to a reference of to type B& is better than binding an expression of type C to a reference of to type A&,

    • ...

    • binding of an expression of type B to a reference of to type A& is better than binding an expression of type C to a reference of to type A&,

    • ...

Date: 2011-10-26.00:00:00

In bullet 3 of paragraph 4 of 12.2.4.3 [over.ics.rank] are two sub-bullets dealing with overload tiebreakers:

  • binding of an expression of type C to a reference of type B& is better than binding an expression of type C to a reference of type A&,

  • ...

  • binding of an expression of type B to a reference of type A& is better than binding an expression of type C to a reference of type A&,

Presumably both of these tiebreakers should apply to rvalue references as well as lvalue references.

History
Date User Action Args
2014-03-03 00:00:00adminsetstatus: drwp -> cd3
2013-05-03 00:00:00adminsetstatus: dr -> drwp
2012-11-03 00:00:00adminsetmessages: + msg4158
2012-11-03 00:00:00adminsetstatus: ready -> dr
2012-02-27 00:00:00adminsetmessages: + msg3735
2012-02-27 00:00:00adminsetstatus: open -> ready
2011-10-26 00:00:00admincreate