in src/libraries/cast/include/m/cast/try_cast.h [119:133]
static constexpr decltype(auto)
do_cast(FromType v)
{
if (v < 0)
throw std::overflow_error("v");
if constexpr (std::numeric_limits<ToType>::digits <
std::numeric_limits<FromType>::digits)
{
if (v > (std::numeric_limits<ToType>::max)())
throw std::overflow_error("v");
}
return static_cast<ToType>(v);
}