From 2f0782a112c599ce32afef8aa657b7eab2b862d8 Mon Sep 17 00:00:00 2001 From: jzmaddock Date: Wed, 27 Jul 2016 09:42:25 +0100 Subject: [PATCH] Fix some Intel and C++03 test failures --- include/boost/multiprecision/detail/number_base.hpp | 7 ++----- include/boost/multiprecision/gmp.hpp | 6 +++--- include/boost/multiprecision/mpfr.hpp | 6 +++--- 3 files changed, 8 insertions(+), 11 deletions(-) diff --git a/include/boost/multiprecision/detail/number_base.hpp b/include/boost/multiprecision/detail/number_base.hpp index 1c8e6f49..5911b3a2 100644 --- a/include/boost/multiprecision/detail/number_base.hpp +++ b/include/boost/multiprecision/detail/number_base.hpp @@ -39,7 +39,7 @@ // // Thread local storage: // -#ifndef BOOST_NO_CXX11_THREAD_LOCAL +#if !defined(BOOST_NO_CXX11_THREAD_LOCAL) && !defined(BOOST_INTEL) # define BOOST_MP_THREAD_LOCAL thread_local #else # define BOOST_MP_THREAD_LOCAL @@ -634,10 +634,7 @@ struct expression result_type r(*this); return static_cast(r); } -#ifndef __SUNPRO_CC -, typename boost::disable_if_c::value || is_constructible::value, int>::type = 0 -#endif -> + template ::value || is_void::value || is_number::value, int>::type = 0> explicit operator T ()const { return static_cast(static_cast(*this)); diff --git a/include/boost/multiprecision/gmp.hpp b/include/boost/multiprecision/gmp.hpp index 90c53b17..7f01682a 100644 --- a/include/boost/multiprecision/gmp.hpp +++ b/include/boost/multiprecision/gmp.hpp @@ -2394,7 +2394,7 @@ namespace math { namespace tools{ } template <> - inline int digits >>() + inline int digits > >() #ifdef BOOST_MATH_NOEXCEPT BOOST_NOEXCEPT #endif @@ -2412,14 +2412,14 @@ namespace math { namespace tools{ template <> inline boost::multiprecision::number > - max_value >>() + max_value > >() { return max_value().backend(); } template <> inline boost::multiprecision::number > - min_value >>() + min_value > >() { return min_value().backend(); } diff --git a/include/boost/multiprecision/mpfr.hpp b/include/boost/multiprecision/mpfr.hpp index b34902a5..28201d28 100644 --- a/include/boost/multiprecision/mpfr.hpp +++ b/include/boost/multiprecision/mpfr.hpp @@ -1537,7 +1537,7 @@ inline boost::multiprecision::number -inline int digits >>() +inline int digits > >() #ifdef BOOST_MATH_NOEXCEPT BOOST_NOEXCEPT #endif @@ -1555,14 +1555,14 @@ BOOST_NOEXCEPT template <> inline boost::multiprecision::number > -max_value >>() +max_value > >() { return max_value().backend(); } template <> inline boost::multiprecision::number > -min_value >>() +min_value > >() { return min_value().backend(); }