This is an unofficial snapshot of the ISO/IEC JTC1 SC22 WG21 Core Issues List revision 114a. See http://www.open-std.org/jtc1/sc22/wg21/ for the official list.

2024-04-18


2240. this is not odr-used in a constant expression

Section: 6.3  [basic.def.odr]     Status: NAD     Submitter: Daveed Vandevoorde     Date: 2016-03-04

According to 6.3 [basic.def.odr] paragraph 3,

this is odr-used if it appears as a potentially-evaluated expression (including as the result of the implicit transformation in the body of a non-static member function (11.4.3 [class.mfct.non.static])).

This wording does not distinguish between constant and non-constant expressions in determining whether this is odr-used or not.

Notes from the April, 2018 teleconference:

Specification of the odr-use of this was done to allow determination of whether this should be captured by a lambda. Recent changes to determine capture syntactically, rather than by odr-use, have rendered this issue almost moot. However, 6.3 [basic.def.odr] still describes when this is odr-used; this specification is no longer necessary and should be removed.

Rationale (February, 2019):

This specification is now used by contracts.