From f4f9da1e6b2d1fe9331dbabbd0537d95e0e47184 Mon Sep 17 00:00:00 2001 From: Daniel Lemire Date: Mon, 29 Dec 2025 10:55:20 -0500 Subject: [PATCH] fix for issue 354 --- include/fast_float/ascii_number.h | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/include/fast_float/ascii_number.h b/include/fast_float/ascii_number.h index 4e1ce3a..cac9160 100644 --- a/include/fast_float/ascii_number.h +++ b/include/fast_float/ascii_number.h @@ -532,6 +532,9 @@ parse_int_string(UC const *p, UC const *pend, T &value, str[j] = static_cast(p[j]); } digits = std::bit_cast(str); +#if FASTFLOAT_IS_BIG_ENDIAN + digits = byteswap(digits); +#endif } #else if (false) { @@ -539,6 +542,9 @@ parse_int_string(UC const *p, UC const *pend, T &value, #endif else if (len >= 4) { ::memcpy(&digits, p, 4); +#if FASTFLOAT_IS_BIG_ENDIAN + digits = byteswap(digits); +#endif } else { uint32_t b0 = static_cast(p[0]); uint32_t b1 = (len > 1) ? static_cast(p[1]) : 0xFFu;