Created on 2014-03-04.00:00:00 last changed 94 months ago
[Moved to DR at the May, 2015 meeting.]
Proposed resolution (November, 2014):
Change 11.4.5 [class.ctor] paragraph 4 as follows:
A default constructor for a class X is a constructor of class X that can be called without an argument. If there is no user-declared constructor for class X, a non-explicit constructor having no parameters is implicitly declared as defaulted (9.5 [dcl.fct.def]). An implicitly-declared default constructor...
Change 11.4.8.2 [class.conv.ctor] paragraph 3 as follows:
A non-explicit copy/move constructor (11.4.5.3 [class.copy.ctor]) is a converting constructor. [Note: An implicitly-declared copy/move constructor is not an explicit constructor; it may be called for implicit type conversions. —end note]
Change 11.4.5.3 [class.copy.ctor] paragraph 7 as follows:
If the class definition does not explicitly declare a copy constructor, a non-explicit one is declared implicitly. If the class...
Change 11.4.5.3 [class.copy.ctor] paragraph 9 as follows:
If the definition of a class X does not explicitly declare a move constructor, a non-explicit one will be implicitly declared as defaulted if and only if...
It used to be clear that an implicitly-declared default constructor is not explicit. That has been inadvertently lost due to other changes, so this specification should be added to 11.4.5 [class.ctor] in parallel with the similar statement in 11.4.5.3 [class.copy.ctor] paragraph 3.
History | |||
---|---|---|---|
Date | User | Action | Args |
2017-02-06 00:00:00 | admin | set | status: drwp -> cd4 |
2015-11-10 00:00:00 | admin | set | status: dr -> drwp |
2015-05-25 00:00:00 | admin | set | messages: + msg6054 |
2015-05-25 00:00:00 | admin | set | status: tentatively ready -> dr |
2014-11-24 00:00:00 | admin | set | messages: + msg5166 |
2014-11-24 00:00:00 | admin | set | status: drafting -> tentatively ready |
2014-07-07 00:00:00 | admin | set | status: open -> drafting |
2014-03-04 00:00:00 | admin | create |