This page is a snapshot from the LWG issues list, see the Library Active Issues List for more information and the meaning of NAD status.
Section: 22.5.3 [optional.optional] Status: NAD Submitter: Tim Song Opened: 2017-09-04 Last modified: 2020-09-06
Priority: 3
View all other issues in [optional.optional].
View all issues with NAD status.
Discussion:
LWG issue 2555 added "It is implementation-defined whether over-aligned types are supported (C++14 §3.11)." to the specification of std::experimental::optional in LFTS, however that issue wasn't moved until optional had already been merged to the IS working paper, so it isn't present in the specification of std::optional. Should the same rule be added for std::optional as well?
[2017-11 Albuquerque Wednesday night issues processing]
Priority set to 3; Casey to provide rationale for closing as NAD.
2018-11 Closed as NAD with the adoption of P0899R1
Proposed resolution:
This wording is relative to N4687.
Edit 22.5.3 [optional.optional] p1 as indicated:
[…] The contained value shall be allocated in a region of the optional<T> storage suitably aligned for the type T. It is implementation-defined whether over-aligned types are supported (6.7.6 [basic.align]). When an object of type optional<T> is contextually converted to bool, the conversion returns true if the object contains a value; otherwise the conversion returns false.