Title
Inheriting constructor templates in a local class
Status
cd4
Section
_N4527_.12.9 [class.inhctor]
Submitter
Daveed Vandevoorde

Created on 2013-08-13.00:00:00 last changed 49 months ago

Messages

Date: 2015-10-15.00:00:00

[Adopted at the October, 2015 meeting as P0136R1.]

A local class cannot, according to 13.7.3 [temp.mem] paragraph 2, have member templates. Presumably, then, an example like the following is ill-formed:

  struct S {
    template<class T> S(T) {
      struct L: S {
        using S::S;
      };
    }
  }; 

It is accepted by current implementations, however. Does something need to be said about this case in _N4527_.12.9 [class.inhctor], either to explicitly allow or forbid it, or is the restriction in 13.7.3 [temp.mem] sufficient?

History
Date User Action Args
2017-02-06 00:00:00adminsetstatus: dr -> cd4
2015-11-10 00:00:00adminsetstatus: drafting -> dr
2013-10-14 00:00:00adminsetstatus: open -> drafting
2013-08-13 00:00:00admincreate