From [[stmt.expand]](https://eel.is/c++draft/stmt.expand#5.2): > where N is the result of evaluating the expression > ``` > [] consteval { > std::ptrdiff_t result = 0; > for (auto i = begin; i != end; ++i, ++result); > return result; // distance from begin to end > }() > ``` Do we need to do a void casting here to comply with the standard's awareness of `operator,`? ``` [] consteval { std::ptrdiff_t result = 0; for (auto i = begin; i != end; ++i, (void)++result); return result; // distance from begin to end }() ``` If so, is this LWG or CWG, or is this editorial (which I strongly doubt)?