From 63aea712deff6878381458f54eb58e5e72275d42 Mon Sep 17 00:00:00 2001 From: HedgehogInTheCPP Date: Tue, 18 Aug 2026 01:13:34 +0300 Subject: [PATCH] latest try to fix compilation. After this I remove all outdated workflows completely. --- include/fast_float/ascii_number.h | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/include/fast_float/ascii_number.h b/include/fast_float/ascii_number.h index a285c40..310c13a 100644 --- a/include/fast_float/ascii_number.h +++ b/include/fast_float/ascii_number.h @@ -390,8 +390,16 @@ parse_digits_until_19(char const *&p, char const *pend, am_mant_t &mantissa) { } } } -#endif +template ::value) = 0> +fastfloat_really_inline FASTFLOAT_CONSTEXPR20 void +parse_digits_until_19(UC const *&p, UC const *pend, + am_mant_t &mantissa) noexcept { + do { + mantissa = mantissa * 10 + static_cast(*p - UC('0')); + } while ((++p != pend) && (mantissa < minimal_nineteen_digit_integer)); +} +#else template fastfloat_really_inline FASTFLOAT_CONSTEXPR20 void parse_digits_until_19(UC const *&p, UC const *pend, @@ -400,6 +408,7 @@ parse_digits_until_19(UC const *&p, UC const *pend, mantissa = mantissa * 10 + static_cast(*p - UC('0')); } while ((++p != pend) && (mantissa < minimal_nineteen_digit_integer)); } +#endif // Call this if chars might not be 8 digits. // Using this style (instead of is_made_of_eight_digits_fast() then