From ca13367ff796142f65a2ee8d4b296e70c871f092 Mon Sep 17 00:00:00 2001 From: Joao Paulo Magalhaes Date: Mon, 26 Dec 2022 17:57:33 +0000 Subject: [PATCH] Suppress warning when comparing floats --- include/fast_float/parse_number.h | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/include/fast_float/parse_number.h b/include/fast_float/parse_number.h index 4772881..4e646ca 100644 --- a/include/fast_float/parse_number.h +++ b/include/fast_float/parse_number.h @@ -99,7 +99,25 @@ fastfloat_really_inline bool rounds_to_nearest() noexcept { // // Note: This may fail to be accurate if fast-math has been // enabled, as rounding conventions may not apply. + #if FASTFLOAT_VISUAL_STUDIO + # pragma warning(push) + // todo: is there a VS warning? + // see https://stackoverflow.com/questions/46079446/is-there-a-warning-for-floating-point-equality-checking-in-visual-studio-2013 + #elif defined(__clang__) + # pragma clang diagnostic push + # pragma clang diagnostic ignored "-Wfloat-equal" + #elif defined(__GNUC__) + # pragma GCC diagnostic push + # pragma GCC diagnostic ignored "-Wfloat-equal" + #endif return (fmini + 1.0f == 1.0f - fmini); + #if FASTFLOAT_VISUAL_STUDIO + # pragma warning(pop) + #elif defined(__clang__) + # pragma clang diagnostic pop + #elif defined(__GNUC__) + # pragma GCC diagnostic pop + #endif } } // namespace detail