UT result = 0;
for (; e - b >= 4; b += 4) {
- result *= 10000;
+ result *= static_cast<UT>(10000);
const int32_t r0 = shift1000[static_cast<size_t>(b[0])];
const int32_t r1 = shift100[static_cast<size_t>(b[1])];
const int32_t r2 = shift10[static_cast<size_t>(b[2])];
if (sum >= OOR) {
goto outOfRange;
}
- result += sum;
+ result += UT(sum);
}
switch (e - b) {
template Expected<long, ConversionCode> digits_to<long>(
const char*,
- const char*);
+ const char*) noexcept;
template Expected<unsigned long, ConversionCode> digits_to<unsigned long>(
const char*,
const char*) noexcept;