To 3.2p2, add:
- if e is a subscript expression (5.2.1), where one operand is of type "array of N T" or "reference to array of N T" and the other operand is a constant expression of integral or enumeration type with value n, where 0 <= n < N, the set contains the potential results of the operand of array type.
- if e is an indirection expression (5.3.1), the set contains the potential results of the operand.
Modify 3.2p3 thus:
A variable x whose name appears as a potentially-evaluated expression ex is odr-used by ex unless applying the lvalue-to-rvalue conversion (4.1) to x or, if x is of array type, an element of x yields a constant expression (5.19) that does not invoke any nontrivial functions and, if x is an object, ex is an element of the set of potential results of an expression e, where either the lvalue-to-rvalue conversion (4.1) is applied to e, or e is a discarded-value expression (Clause 5).