cpp/utility/in range

Returns if the value of  is in the range of values that can be represented in, that is, if  can be converted to  without data loss.

It is a compile-time error if either or  is not a signed or unsigned integer type (including standard integer type and extended integer type).

Return value
if the value of is representable in,  otherwise.