2829. LWG 2740 leaves behind vacuous words

Section: 22.5.3.7 [optional.observe] Status: Open Submitter: Richard Smith Opened: 2016-11-24 Last modified: 2020-06-13

Priority: 2

View other active issues in [optional.observe].

View all other issues in [optional.observe].

View all issues with Open status.

Discussion:

After applying LWG 2740, we have:

constexpr const T* operator->() const;
constexpr T* operator->();

-1- Requires: *this contains a value.

-2- Returns: val.

-3- Throws: Nothing.

-4- Remarks: These functions shall be constexpr functions.

Paragraph 4 is completely superfluous. We already said these functions were constexpr in the synopsis. Can it be removed?

[Issues Telecon 16-Dec-2016]

Priority 2

Jonathan notes: Although Richard is correct, I suggest we don't strike the paragraph, so that we remember to fix it as part of 2833, when we know how to say this properly.

[2018-06 Rapperswil Thursday issues processing]

Status to Open; also see 7.7 [expr.const]/6 and 2289.

[2020-06-08 Nina Dinka Ranns comments]

The revised wording provided by LWG 2833 should resolve this issue as well.

Proposed resolution: