From da670c577addeb5befe36f36d6ebf392116d8986 Mon Sep 17 00:00:00 2001 From: John Maddock Date: Sat, 7 Jan 2006 11:28:37 +0000 Subject: [PATCH] Check for infinity before using it. [SVN r32254] --- test/log1p_expm1_test.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) 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()); + } }