Fix random for custom scalars that don't have constexpr digits().
The NumTraits<Scalar>::digits()
function isn't actually constexpr
in some cases. In particular, our default implementation uses std::log2
,
which isn't constexpr
. Unfortunately, this means we can't actually precompute
the number of mantissa bits in general.