diff --git a/libc/src/math/generic/exp2f.cpp b/libc/src/math/generic/exp2f.cpp --- a/libc/src/math/generic/exp2f.cpp +++ b/libc/src/math/generic/exp2f.cpp @@ -107,8 +107,9 @@ int k = static_cast(kf); // hi = floor(kf * 2^(-4)) // exp_hi = shift hi to the exponent field of double precision. - int64_t exp_hi = static_cast(k >> ExpBase::MID_BITS) - << fputil::FloatProperties::MANTISSA_WIDTH; + int64_t exp_hi = + static_cast(static_cast(k >> ExpBase::MID_BITS) + << fputil::FloatProperties::MANTISSA_WIDTH); // mh = 2^hi * 2^mid // mh_bits = bit field of mh int64_t mh_bits = ExpBase::EXP_2_MID[k & ExpBase::MID_MASK] + exp_hi;