|
Boost-Commit : |
Subject: [Boost-commit] svn:boost r79854 - in sandbox/big_number: boost/multiprecision libs/multiprecision/performance libs/multiprecision/test
From: john_at_[hidden]
Date: 2012-08-02 13:14:18
Author: johnmaddock
Date: 2012-08-02 13:14:17 EDT (Thu, 02 Aug 2012)
New Revision: 79854
URL: http://svn.boost.org/trac/boost/changeset/79854
Log:
Fix Linux x64 C++0x build issues.
Text files modified:
sandbox/big_number/boost/multiprecision/mp_number.hpp | 10 +++++-----
sandbox/big_number/libs/multiprecision/performance/arithmetic_backend.hpp | 7 ++++---
sandbox/big_number/libs/multiprecision/performance/delaunay_test.cpp | 7 ++-----
sandbox/big_number/libs/multiprecision/test/Jamfile.v2 | 2 +-
4 files changed, 12 insertions(+), 14 deletions(-)
Modified: sandbox/big_number/boost/multiprecision/mp_number.hpp
==============================================================================
--- sandbox/big_number/boost/multiprecision/mp_number.hpp (original)
+++ sandbox/big_number/boost/multiprecision/mp_number.hpp 2012-08-02 13:14:17 EDT (Thu, 02 Aug 2012)
@@ -1471,23 +1471,23 @@
// Tests if the expression contains a reference to *this:
template <class Exp>
- BOOST_CONSTEXPR bool contains_self(const Exp& e)const BOOST_NOEXCEPT
+ bool contains_self(const Exp& e)const BOOST_NOEXCEPT
{
return contains_self(e, typename Exp::arity());
}
template <class Exp>
- BOOST_CONSTEXPR bool contains_self(const Exp& e, mpl::int_<0> const&)const BOOST_NOEXCEPT
+ bool contains_self(const Exp& e, mpl::int_<0> const&)const BOOST_NOEXCEPT
{
return is_realy_self(e.value());
}
template <class Exp>
- BOOST_CONSTEXPR bool contains_self(const Exp& e, mpl::int_<1> const&)const BOOST_NOEXCEPT
+ bool contains_self(const Exp& e, mpl::int_<1> const&)const BOOST_NOEXCEPT
{
typedef typename Exp::left_type child_type;
return contains_self(e.left(), typename child_type::arity());
}
template <class Exp>
- BOOST_CONSTEXPR bool contains_self(const Exp& e, mpl::int_<2> const&)const BOOST_NOEXCEPT
+ bool contains_self(const Exp& e, mpl::int_<2> const&)const BOOST_NOEXCEPT
{
typedef typename Exp::left_type child0_type;
typedef typename Exp::right_type child1_type;
@@ -1495,7 +1495,7 @@
|| contains_self(e.right(), typename child1_type::arity());
}
template <class Exp>
- BOOST_CONSTEXPR bool contains_self(const Exp& e, mpl::int_<3> const&)const BOOST_NOEXCEPT
+ bool contains_self(const Exp& e, mpl::int_<3> const&)const BOOST_NOEXCEPT
{
typedef typename Exp::left_type child0_type;
typedef typename Exp::middle_type child1_type;
Modified: sandbox/big_number/libs/multiprecision/performance/arithmetic_backend.hpp
==============================================================================
--- sandbox/big_number/libs/multiprecision/performance/arithmetic_backend.hpp (original)
+++ sandbox/big_number/libs/multiprecision/performance/arithmetic_backend.hpp 2012-08-02 13:14:17 EDT (Thu, 02 Aug 2012)
@@ -13,6 +13,7 @@
#include <boost/lexical_cast.hpp>
#include <boost/math/concepts/real_concept.hpp>
#include <boost/multiprecision/mp_number.hpp>
+#include <boost/math/common_factor_rt.hpp>
namespace boost{
namespace multiprecision{
@@ -223,17 +224,17 @@
}
template <class Arithmetic, class A2>
-inline typename enable_if<is_arithmetic<A2>>::type eval_add(arithmetic_backend<Arithmetic>& result, const arithmetic_backend<Arithmetic>& a, const A2& b)
+inline typename enable_if<is_arithmetic<A2> >::type eval_add(arithmetic_backend<Arithmetic>& result, const arithmetic_backend<Arithmetic>& a, const A2& b)
{
result.data() = a.data() + b;
}
template <class Arithmetic, class A2>
-inline typename enable_if<is_arithmetic<A2>>::type eval_subtract(arithmetic_backend<Arithmetic>& result, const arithmetic_backend<Arithmetic>& a, const A2& b)
+inline typename enable_if<is_arithmetic<A2> >::type eval_subtract(arithmetic_backend<Arithmetic>& result, const arithmetic_backend<Arithmetic>& a, const A2& b)
{
result.data() = a.data() - b;
}
template <class Arithmetic, class A2>
-inline typename enable_if<is_arithmetic<A2>>::type eval_multiply(arithmetic_backend<Arithmetic>& result, const arithmetic_backend<Arithmetic>& a, const A2& b)
+inline typename enable_if<is_arithmetic<A2> >::type eval_multiply(arithmetic_backend<Arithmetic>& result, const arithmetic_backend<Arithmetic>& a, const A2& b)
{
result.data() = a.data() * b;
}
Modified: sandbox/big_number/libs/multiprecision/performance/delaunay_test.cpp
==============================================================================
--- sandbox/big_number/libs/multiprecision/performance/delaunay_test.cpp (original)
+++ sandbox/big_number/libs/multiprecision/performance/delaunay_test.cpp 2012-08-02 13:14:17 EDT (Thu, 02 Aug 2012)
@@ -129,12 +129,12 @@
}
template <class R, class T>
-__forceinline void mul_2n(R& r, const T& a, const T& b)
+inline void mul_2n(R& r, const T& a, const T& b)
{
r = R(a) * b;
}
-__forceinline void mul_2n(int128_t& r, const boost::int64_t& a, const boost::int64_t& b)
+inline void mul_2n(int128_t& r, const boost::int64_t& a, const boost::int64_t& b)
{
r = mult_64x64_to_128(a, b);
}
@@ -156,9 +156,6 @@
typedef typename Traits::i64_t i64;
typedef typename Traits::i128_t i128;
- i64 ax64 = ax, ay64 = ay, bx64 = bx, by64 = by,
- cx64 = cx, cy64 = cy, dx64 = dx, dy64 = dy;
-
i64 cos_abc, t;
mul_2n(cos_abc, (ax-bx), (cx-bx));
mul_2n(t, (ay-by), (cy-by));
Modified: sandbox/big_number/libs/multiprecision/test/Jamfile.v2
==============================================================================
--- sandbox/big_number/libs/multiprecision/test/Jamfile.v2 (original)
+++ sandbox/big_number/libs/multiprecision/test/Jamfile.v2 2012-08-02 13:14:17 EDT (Thu, 02 Aug 2012)
@@ -578,7 +578,7 @@
: test_constants_cpp_dec_float ;
-run test_move.cpp mpfr
+run test_move.cpp mpfr gmp
: # command line
: # input files
: # requirements
Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk