The saturated absolute value of x. More specifically, for signed integral, abs[saturated](valmin(as<T>{})) returns eve::valmax(as<T>{}))
Note
The absolute value of x is always representable except for The minimum value of integral signed values. In that case, contrarily to the standard, the result is not undefined behaviour, but just incorrect. In this case, eve::abs(valmin) returns valmin.
Warning
abs is also a standard library function name and there possibly exists a C macro version which may be called instead of the EVE version.
To avoid confusion, use the eve::abs notation.