Created on 2021-11-01.00:00:00 last changed 27 months ago
Proposed resolution:
This wording is relative to N4917.
Add a new subclause [exception.propagation] at the end of [utility.requirements] (after [allocator.requirements.completeness]):
16.4.4.? Exception propagation requirements [exception.propagation]
-?- Some functions defined in the C++ standard library impose requirements and guarantees R-G when a described evaluation E of a constructor or construction exits via an exception. Let F be the initialization denoted by E. Unless stated otherwise, F also has R-G imposed. [Note ?: This includes the initialization of parameters and the evaluation of default arguments as part of F. — end note]
[ 2022-09-28; Johel provides revised wording ]
[ 2022-01-30; Reflector poll ]
Set priority to 3 after reflector poll. "Any throwing destructor is library UB already, so there's no need to contort the wording to accommodate those."
Previous resolution [SUPERSEDED]:
This wording is relative to N4901.
Add a new subclause [exception.propagation] at the end of [utility.requirements] (after [allocator.requirements.completeness]):
16.4.4.? Exception propagation requirements [exception.propagation]
-?- Some functions defined in the C++ standard library impose requirements and guarantees R-G when a described evaluation E exits via an exception. Let F be an evaluation that is implied by evaluating E up to the complete evaluation of its enclosing full-expression. Unless stated otherwise, an execution of F that exits via an exception also has R-G imposed. [Note ?: This includes when initializing and destroying parameters, evaluating default arguments, and destroying temporaries (including discarded-value expressions) ([expr.call]) exit via an exception. — end note]
History | |||
---|---|---|---|
Date | User | Action | Args |
2022-10-01 11:11:38 | admin | set | messages: + msg12835 |
2022-01-30 17:05:36 | admin | set | messages: + msg12317 |
2021-11-14 19:01:41 | admin | set | messages: + msg12223 |
2021-11-01 00:00:00 | admin | create |