]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/libs/math/test/daubechies_scaling_test.cpp
update ceph source to reef 18.1.2
[ceph.git] / ceph / src / boost / libs / math / test / daubechies_scaling_test.cpp
index 08799357ef561757f5c1e7279d8f2c0c05761a33..5b7b9922e99950cb4654575b79978e87557c87a8 100644 (file)
@@ -11,6 +11,7 @@
 #include <iomanip>
 #include <iostream>
 #include <random>
+#include <boost/assert.hpp>
 #include <boost/core/demangle.hpp>
 #include <boost/hana/for_each.hpp>
 #include <boost/hana/ext/std/integer_sequence.hpp>
@@ -244,7 +245,7 @@ void test_dyadic_grid()
     {
         auto phijk = boost::math::daubechies_scaling_dyadic_grid<Real, i+2, 0>(0);
         auto phik = boost::math::detail::daubechies_scaling_integer_grid<Real, i+2, 0>();
-        assert(phik.size() == phijk.size());
+        BOOST_ASSERT(phik.size() == phijk.size());
 
         for (size_t k = 0; k < phik.size(); ++k)
         {
@@ -353,15 +354,15 @@ void test_quadratures()
             CHECK_ULP_CLOSE(Real(0), phi(xlo), 0);
             CHECK_ULP_CLOSE(Real(0), phi(xhi), 0);
             xlo = std::nextafter(xlo, std::numeric_limits<Real>::lowest());
-            xhi = std::nextafter(xhi, std::numeric_limits<Real>::max());
+            xhi = std::nextafter(xhi, (std::numeric_limits<Real>::max)());
         }
 
         xlo = a;
         xhi = b;
         for (int i = 0; i < samples; ++i) {
-            assert(abs(phi(xlo)) <= 5);
-            assert(abs(phi(xhi)) <= 5);
-            xlo = std::nextafter(xlo, std::numeric_limits<Real>::max());
+            BOOST_ASSERT(abs(phi(xlo)) <= 5);
+            BOOST_ASSERT(abs(phi(xhi)) <= 5);
+            xlo = std::nextafter(xlo, (std::numeric_limits<Real>::max)());
             xhi = std::nextafter(xhi, std::numeric_limits<Real>::lowest());
         }
 
@@ -392,7 +393,7 @@ void test_quadratures()
         }
 
         std::random_device rd;
-        Real t = static_cast<Real>(rd())/static_cast<Real>(rd.max());
+        Real t = static_cast<Real>(rd())/static_cast<Real>((rd.max)());
         Real S = phi(t);
         Real dS = phi.prime(t);
         while (t < b)
@@ -425,23 +426,23 @@ void test_quadratures()
             CHECK_ULP_CLOSE(Real(0), phi(xlo), 0);
             CHECK_ULP_CLOSE(Real(0), phi(xhi), 0);
             if constexpr (p > 2) {
-                assert(abs(phi.prime(xlo)) <= 5);
-                assert(abs(phi.prime(xhi)) <= 5);
+                BOOST_ASSERT(abs(phi.prime(xlo)) <= 5);
+                BOOST_ASSERT(abs(phi.prime(xhi)) <= 5);
                 if constexpr (p > 5) {
-                    assert(abs(phi.double_prime(xlo)) <= 5);
-                    assert(abs(phi.double_prime(xhi)) <= 5);
+                     BOOST_ASSERT(abs(phi.double_prime(xlo)) <= 5);
+                     BOOST_ASSERT(abs(phi.double_prime(xhi)) <= 5);
                 }
             }
             xlo = std::nextafter(xlo, std::numeric_limits<Real>::lowest());
-            xhi = std::nextafter(xhi, std::numeric_limits<Real>::max());
+            xhi = std::nextafter(xhi, (std::numeric_limits<Real>::max)());
         }
 
         xlo = a;
         xhi = b;
         for (int i = 0; i < samples; ++i) {
-            assert(abs(phi(xlo)) <= 5);
-            assert(abs(phi(xhi)) <= 5);
-            xlo = std::nextafter(xlo, std::numeric_limits<Real>::max());
+            BOOST_ASSERT(abs(phi(xlo)) <= 5);
+            BOOST_ASSERT(abs(phi(xhi)) <= 5);
+            xlo = std::nextafter(xlo, (std::numeric_limits<Real>::max)());
             xhi = std::nextafter(xhi, std::numeric_limits<Real>::lowest());
         }
     }
@@ -449,6 +450,7 @@ void test_quadratures()
 
 int main()
 {
+    #ifndef __MINGW32__
     boost::hana::for_each(std::make_index_sequence<18>(), [&](auto i){
       test_quadratures<float, i+2>();
       test_quadratures<double, i+2>();
@@ -528,6 +530,6 @@ int main()
         test_daubechies_filters<float128, i+1>();
     });
     #endif
-
+    #endif // compiler guard for CI
     return boost::math::test::report_errors();
 }