diff --git a/include/nlohmann/detail/output/binary_writer.hpp b/include/nlohmann/detail/output/binary_writer.hpp index 24e7c1094..8a172056b 100644 --- a/include/nlohmann/detail/output/binary_writer.hpp +++ b/include/nlohmann/detail/output/binary_writer.hpp @@ -1524,6 +1524,8 @@ class binary_writer void write_compact_float(const number_float_t n, detail::input_format_t format) { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wfloat-equal" if (static_cast(n) >= static_cast(std::numeric_limits::lowest()) && static_cast(n) <= static_cast((std::numeric_limits::max)()) && static_cast(static_cast(n)) == static_cast(n)) @@ -1540,6 +1542,7 @@ class binary_writer : get_msgpack_float_prefix(n)); write_number(n); } +#pragma GCC diagnostic pop } public: diff --git a/single_include/nlohmann/json.hpp b/single_include/nlohmann/json.hpp index 28ce55292..1e9ac7941 100644 --- a/single_include/nlohmann/json.hpp +++ b/single_include/nlohmann/json.hpp @@ -14825,6 +14825,8 @@ class binary_writer void write_compact_float(const number_float_t n, detail::input_format_t format) { +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wfloat-equal" if (static_cast(n) >= static_cast(std::numeric_limits::lowest()) && static_cast(n) <= static_cast((std::numeric_limits::max)()) && static_cast(static_cast(n)) == static_cast(n)) @@ -14841,6 +14843,7 @@ class binary_writer : get_msgpack_float_prefix(n)); write_number(n); } +#pragma GCC diagnostic pop } public: