Description
From Gaby:
Paragraph 12.4/5 defines two unrelated concepts:
- a defaulted destructor that is defined as deleted;
- the notion of trivial destructors
They should have their own paragraphs.
The same applies in other places in clause 12: see, for instance, 12.1/4, which specifies
- what a defaulted constructor is
- when a default constructor is implicitly declared and how it behaves
- when a defaulted default constructor is deleted
- when a defaulted default constructor is trivial
I think at least (3) and (4) should be in their own paragraphs. I have no particular opinion about whether (1) and (2) should be split up, but my inclination is to keep them together since the fact that you implicitly get a default constructor in some cases is fairly fundamental to the notion of a default constructor.
12.8 paragraphs 7-12 are a bit better (the 'deleted' and 'trivial' determination are already in their own paragraphs), but paragraph 11 is a bit confused: its opening sentence is about implicitly-declared constructors ("...is an inline public member..."), but the rest of the paragraph is about implicitly deleting defaulted constructors, which happens for non-implicitly-declared constructors too. The opening sentence of paragraph 11 would fit much better in, say, paragraph 7.