diff --git a/test/log1p_expm1_test.cpp b/test/log1p_expm1_test.cpp index 343df3aab..9c3e23d6d 100644 --- a/test/log1p_expm1_test.cpp +++ b/test/log1p_expm1_test.cpp @@ -559,10 +559,13 @@ void test(T) static const T m_one = -1; BOOST_CHECK_EQUAL(boost::math::log1p(zero), zero); BOOST_CHECK_EQUAL(boost::math::log1p(-zero), zero); - BOOST_CHECK_EQUAL(boost::math::log1p(m_one), -std::numeric_limits::infinity()); BOOST_CHECK_EQUAL(boost::math::expm1(zero), zero); - BOOST_CHECK_EQUAL(boost::math::expm1(-std::numeric_limits::infinity()), m_one); - BOOST_CHECK_EQUAL(boost::math::expm1(std::numeric_limits::infinity()), std::numeric_limits::infinity()); + if(std::numeric_limits::has_infinity) + { + BOOST_CHECK_EQUAL(boost::math::log1p(m_one), -std::numeric_limits::infinity()); + BOOST_CHECK_EQUAL(boost::math::expm1(-std::numeric_limits::infinity()), m_one); + BOOST_CHECK_EQUAL(boost::math::expm1(std::numeric_limits::infinity()), std::numeric_limits::infinity()); + } }