A bit misunderstanding about odr-used definition

135 Views Asked by At

The definition of the odr-used variable is given as follows:

A variable x whose name appears as a potentially-evaluated expression ex is odr-used unless x satisfies the requirements for appearing in a constant expression (5.19) 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).

As far as I understood ex can be any expression containing x as a potentially evaluated operand, say, x++ or

int foo(int);
int x;

//...

x+=foo(x);

But I didn't understand what is just e in that case.

0

There are 0 best solutions below