min
for details. x < y
or not. If we wanted to be mathematically correct, we should probably ask that if_(cond, x, y)
returns a common data type of x
and y
, and then the behavior of min
would follow naturally. However, I'm unsure whether this is desirable because that's a big requirement. Improve this explanation and talk about non-integral constant expressions wrapped into types.
Explain how side-effects may not appear inside constant expressions, even if the expression they yield are not accessed.