Created on 2023-06-16.00:00:00 last changed 11 months ago
Proposed resolution:
For the purposes of determining whether an expression E is a core constant expression, the evaluation of the body of a member function of std::allocator<T> as defined in 20.2.10.2 [allocator.members], where T is a literal type, is ignored. Similarly, the evaluation of the body of std::construct_at or std::ranges::construct_at is considered to include only theunderlying constructor callinitialization of the T object if the first argument (of type T*) points to storage allocated with std::allocator<T> or to an object whose lifetime began within the evaluation of E.
[Accepted as a DR at the June, 2023 meeting.]
Subclause 7.7 [expr.const] paragraph 6 talks about invoking the "underlying constructor", but there is no constructor when creating an aggregate or a scalar type.
History | |||
---|---|---|---|
Date | User | Action | Args |
2023-12-19 10:15:28 | admin | set | status: dr -> drwp |
2023-07-16 13:00:43 | admin | set | status: ready -> dr |
2023-06-16 11:01:38 | admin | set | status: open -> ready |
2023-06-16 10:55:18 | admin | set | messages: + msg7326 |
2023-06-16 00:00:00 | admin | create |