Title
References to function types with a cv-qualifier or ref-qualifier
Status
cd2
Section
12.5 [over.built]
Submitter
Alberto Ganesh Barbati

Created on 2008-12-09.00:00:00 last changed 171 months ago

Messages

Date: 2009-07-15.00:00:00

[Voted into WP at July, 2009 meeting.]

Date: 2009-03-15.00:00:00

Proposed resolution (March, 2009):

  1. Change 12.5 [over.built] paragraph 7 as follows:

  2. For every function type T that does not have cv-qualifiers or a ref-qualifier, there exist candidate operator functions of the form
      T & operator*(T*);
  3. Change _N2914_.14.10.4 [concept.support] paragraph 7 as follows:

  4. Requires: for every type T that is an object type, a function type that does not have cv-qualifiers or a ref-qualifier, or cv void, a concept map PointeeType<T> is implicitly defined in namespace std.
  5. Change _N2914_.14.10.4 [concept.support] paragraph 11 as follows:

  6. Requires: for every type T that is an object type, a function type that does not have cv-qualifiers or a ref-qualifier, or a reference type, a concept map ReferentType<T> is implicitly defined in namespace std.
Date: 2009-11-08.00:00:00

12.5 [over.built] paragraph 7 posits the existence of built-in candidate operator* functions “for every function type T.” However, only non-static member function types can contain a cv-qualifier or ref-qualifier (9.3.4.6 [dcl.fct] paragraph 7), and a reference to such a type cannot be initialized (7.6.1.5 [expr.ref] paragraph 4, bullet 3, sub-bullet 2). (See also _N2914_.14.10.4 [concept.support] paragraph 10, which disallows references to function types with cv-qualifiers but is silent on ref-qualifiers.)

History
Date User Action Args
2010-03-29 00:00:00adminsetstatus: wp -> cd2
2009-11-08 00:00:00adminsetstatus: dr -> wp
2009-08-03 00:00:00adminsetmessages: + msg2270
2009-08-03 00:00:00adminsetstatus: ready -> dr
2009-03-23 00:00:00adminsetmessages: + msg1894
2009-03-23 00:00:00adminsetstatus: open -> ready
2008-12-09 00:00:00admincreate