diff --git a/include/fmt/format-inl.h b/include/fmt/format-inl.h index f586c959ecc3..4773c49eaa68 100644 --- a/include/fmt/format-inl.h +++ b/include/fmt/format-inl.h @@ -489,9 +489,9 @@ digits::result grisu2_gen_digits(fp value, uint64_t error, int& exp, // The fractional part of scaled value (p2 in Grisu) c = value % one. uint64_t fractional = value.f & (one.f - 1); exp = count_digits(integral); // kappa in Grisu. - auto result = handler.on_start(data::POWERS_OF_10_64[exp] << -one.e, value.f, + auto result1 = handler.on_start(data::POWERS_OF_10_64[exp] << -one.e, value.f, error, exp); - if (result != digits::more) return result; + if (result1 != digits::more) return result1; // Generate digits for the integral part. This can produce up to 10 digits. do { uint32_t digit = 0; @@ -544,10 +544,10 @@ digits::result grisu2_gen_digits(fp value, uint64_t error, int& exp, --exp; uint64_t remainder = (static_cast(integral) << -one.e) + fractional; - auto result = handler.on_digit(static_cast('0' + digit), + auto result2 = handler.on_digit(static_cast('0' + digit), data::POWERS_OF_10_64[exp] << -one.e, remainder, error, exp, true); - if (result != digits::more) return result; + if (result2 != digits::more) return result2; } while (exp > 0); // Generate digits for the fractional part. for (;;) { @@ -557,8 +557,8 @@ digits::result grisu2_gen_digits(fp value, uint64_t error, int& exp, static_cast('0' + static_cast(fractional >> -one.e)); fractional &= one.f - 1; --exp; - auto result = handler.on_digit(digit, one.f, fractional, error, exp, false); - if (result != digits::more) return result; + auto result3 = handler.on_digit(digit, one.f, fractional, error, exp, false); + if (result3 != digits::more) return result3; } }