Merge pull request #752 from boostorg/issue751

Fix #751 via more denorm_absent deprecation
This commit is contained in:
Christopher Kormanyos
2026-02-06 11:18:13 +01:00
committed by GitHub
8 changed files with 98 additions and 35 deletions
@@ -2273,12 +2273,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::cpp_bi
static constexpr bool has_quiet_NaN = true;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable:4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity()
@@ -3681,17 +3681,22 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::cpp_de
static constexpr typename boost::multiprecision::cpp_dec_float<Digits10, ExponentType, Allocator>::exponent_type max_exponent = boost::multiprecision::cpp_dec_float<Digits10, ExponentType, Allocator>::cpp_dec_float_max_exp; // Type differs from int.
static constexpr typename boost::multiprecision::cpp_dec_float<Digits10, ExponentType, Allocator>::exponent_type max_exponent10 = boost::multiprecision::cpp_dec_float<Digits10, ExponentType, Allocator>::cpp_dec_float_max_exp10; // Type differs from int.
static constexpr int radix = boost::multiprecision::cpp_dec_float<Digits10, ExponentType, Allocator>::cpp_dec_float_radix;
static constexpr std::float_round_style round_style = std::round_indeterminate;
static constexpr float_round_style round_style = round_indeterminate;
static constexpr bool has_infinity = true;
static constexpr bool has_quiet_NaN = true;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr std::float_denorm_style has_denorm = std::denorm_absent;
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static constexpr bool traps = false;
@@ -2555,7 +2555,19 @@ BOOST_MP_DF_QF_NUM_LIMITS_CLASS_TYPE numeric_limits<boost::multiprecision::numbe
#pragma warning(disable:4996)
#endif
#ifdef _MSC_VER
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = true;
#ifdef BOOST_MSVC
@@ -200,22 +200,18 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::cpp_in
static constexpr bool has_infinity = false;
static constexpr bool has_quiet_NaN = false;
static constexpr bool has_signaling_NaN = false;
#if defined(__clang__) && defined(__has_warning)
# if __has_warning("-Wdeprecated-declarations")
#ifdef _MSC_VER
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
# endif
#elif defined(_MSC_VER)
# pragma warning(push)
# pragma warning(disable:4996)
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#if defined(__clang__) && defined(__has_warning)
# if __has_warning("-Wdeprecated-declarations")
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
# endif
#elif defined(_MSC_VER)
# pragma warning(pop)
#endif
static constexpr bool has_denorm_loss = false;
static BOOST_CXX14_CONSTEXPR_IF_DETECTION number_type infinity() { return 0; }
+28 -8
View File
@@ -3591,12 +3591,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::gmp_fl
static constexpr bool has_quiet_NaN = false;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static constexpr number_type infinity() { return number_type(); }
@@ -3690,12 +3695,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::gmp_fl
static constexpr bool has_quiet_NaN = false;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity() { return number_type(); }
@@ -3799,12 +3809,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::gmp_in
static constexpr bool has_quiet_NaN = false;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity() { return number_type(); }
@@ -3909,12 +3924,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::gmp_ra
static constexpr bool has_quiet_NaN = false;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity() { return number_type(); }
+14 -4
View File
@@ -2373,12 +2373,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::mpfi_f
static constexpr bool has_quiet_NaN = true;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity()
@@ -2483,12 +2488,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::mpfi_f
static constexpr bool has_quiet_NaN = false;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity() { return number_type(0); }
+14 -4
View File
@@ -3429,12 +3429,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::mpfr_f
static constexpr bool has_quiet_NaN = true;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity()
@@ -3562,12 +3567,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::mpfr_f
static constexpr bool has_quiet_NaN = true;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity()
+7 -2
View File
@@ -957,12 +957,17 @@ class numeric_limits<boost::multiprecision::number<boost::multiprecision::tommat
static constexpr bool has_quiet_NaN = false;
static constexpr bool has_signaling_NaN = false;
#ifdef _MSC_VER
#pragma warning(push)
#pragma warning(disable : 4996)
# pragma warning(push)
# pragma warning(disable : 4996)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic push
# pragma clang diagnostic ignored "-Wdeprecated-declarations"
#endif
static constexpr float_denorm_style has_denorm = denorm_absent;
#ifdef _MSC_VER
#pragma warning(pop)
#elif (defined(__clang__) && (__clang_major__ >= 17))
# pragma clang diagnostic pop
#endif
static constexpr bool has_denorm_loss = false;
static number_type infinity() { return number_type(); }