149 lines
8.8 KiB
Diff
149 lines
8.8 KiB
Diff
diff -up boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp~ boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp
|
|
--- boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp~ 2012-09-20 09:04:02.000000000 -0700
|
|
+++ boost_1_54_0/boost/multiprecision/detail/functions/constants.hpp 2013-07-22 03:31:01.145084522 -0700
|
|
@@ -81,7 +81,6 @@ template <class T>
|
|
void calc_e(T& result, unsigned digits)
|
|
{
|
|
typedef typename mpl::front<typename T::unsigned_types>::type ui_type;
|
|
- typedef typename mpl::front<typename T::float_types>::type real_type;
|
|
//
|
|
// 1100 digits in string form:
|
|
//
|
|
diff -up boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp~ boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp
|
|
--- boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp~ 2013-03-31 09:34:50.000000000 -0700
|
|
+++ boost_1_54_0/boost/multiprecision/detail/functions/pow.hpp 2013-07-22 03:43:12.495489757 -0700
|
|
@@ -142,10 +142,6 @@ void hyp1F0(T& H1F0, const T& a, const T
|
|
// There are no checks on input range or parameter boundaries.
|
|
|
|
typedef typename boost::multiprecision::detail::canonical<int, T>::type si_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<unsigned, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
- typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
BOOST_ASSERT(&H1F0 != &x);
|
|
BOOST_ASSERT(&H1F0 != &a);
|
|
@@ -200,7 +196,6 @@ void eval_exp(T& result, const T& x)
|
|
typedef typename boost::multiprecision::detail::canonical<int, T>::type si_type;
|
|
typedef typename T::exponent_type exp_type;
|
|
typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<float, T>::type float_type;
|
|
|
|
// Handle special arguments.
|
|
int type = eval_fpclassify(x);
|
|
@@ -326,7 +321,6 @@ void eval_log(T& result, const T& arg)
|
|
// then let y = x - 1 and compute:
|
|
// log(x) = log(2) * n + log1p(1 + y)
|
|
//
|
|
- typedef typename boost::multiprecision::detail::canonical<int, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<unsigned, T>::type ui_type;
|
|
typedef typename T::exponent_type exp_type;
|
|
typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
@@ -409,9 +403,6 @@ inline void eval_pow(T& result, const T&
|
|
{
|
|
BOOST_STATIC_ASSERT_MSG(number_category<T>::value == number_kind_floating_point, "The pow function is only valid for floating point types.");
|
|
typedef typename boost::multiprecision::detail::canonical<int, T>::type si_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<unsigned, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
if((&result == &x) || (&result == &a))
|
|
@@ -595,10 +586,7 @@ namespace detail{
|
|
template <class T>
|
|
void sinhcosh(const T& x, T* p_sinh, T* p_cosh)
|
|
{
|
|
- typedef typename boost::multiprecision::detail::canonical<int, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<unsigned, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
switch(eval_fpclassify(x))
|
|
diff -up boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp~ boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp
|
|
--- boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp~ 2013-03-31 09:34:50.000000000 -0700
|
|
+++ boost_1_54_0/boost/multiprecision/detail/functions/trig.hpp 2013-07-22 03:44:30.512963273 -0700
|
|
@@ -17,9 +17,6 @@ void hyp0F1(T& result, const T& b, const
|
|
{
|
|
typedef typename boost::multiprecision::detail::canonical<boost::int32_t, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<boost::uint32_t, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
- typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
// Compute the series representation of Hypergeometric0F1 taken from
|
|
// http://functions.wolfram.com/HypergeometricFunctions/Hypergeometric0F1/06/01/01/
|
|
@@ -82,8 +79,6 @@ void eval_sin(T& result, const T& x)
|
|
|
|
typedef typename boost::multiprecision::detail::canonical<boost::int32_t, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<boost::uint32_t, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
switch(eval_fpclassify(x))
|
|
@@ -228,8 +223,6 @@ void eval_cos(T& result, const T& x)
|
|
|
|
typedef typename boost::multiprecision::detail::canonical<boost::int32_t, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<boost::uint32_t, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
switch(eval_fpclassify(x))
|
|
@@ -381,11 +374,7 @@ void hyp2F1(T& result, const T& a, const
|
|
// Abramowitz and Stegun 15.1.1.
|
|
// There are no checks on input range or parameter boundaries.
|
|
|
|
- typedef typename boost::multiprecision::detail::canonical<boost::int32_t, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<boost::uint32_t, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
- typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
T x_pow_n_div_n_fact(x);
|
|
T pochham_a (a);
|
|
@@ -443,10 +432,7 @@ template <class T>
|
|
void eval_asin(T& result, const T& x)
|
|
{
|
|
BOOST_STATIC_ASSERT_MSG(number_category<T>::value == number_kind_floating_point, "The asin function is only valid for floating point types.");
|
|
- typedef typename boost::multiprecision::detail::canonical<boost::int32_t, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<boost::uint32_t, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
if(&result == &x)
|
|
@@ -597,8 +583,6 @@ void eval_atan(T& result, const T& x)
|
|
BOOST_STATIC_ASSERT_MSG(number_category<T>::value == number_kind_floating_point, "The atan function is only valid for floating point types.");
|
|
typedef typename boost::multiprecision::detail::canonical<boost::int32_t, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<boost::uint32_t, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
switch(eval_fpclassify(x))
|
|
@@ -699,11 +683,7 @@ void eval_atan2(T& result, const T& y, c
|
|
return;
|
|
}
|
|
|
|
- typedef typename boost::multiprecision::detail::canonical<boost::int32_t, T>::type si_type;
|
|
typedef typename boost::multiprecision::detail::canonical<boost::uint32_t, T>::type ui_type;
|
|
- typedef typename T::exponent_type exp_type;
|
|
- typedef typename boost::multiprecision::detail::canonical<exp_type, T>::type canonical_exp_type;
|
|
- typedef typename mpl::front<typename T::float_types>::type fp_type;
|
|
|
|
switch(eval_fpclassify(y))
|
|
{
|
|
diff -up boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp~ boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp
|
|
--- boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp~ 2012-12-20 09:42:14.000000000 -0800
|
|
+++ boost_1_54_0/boost/multiprecision/detail/generic_interconvert.hpp 2013-07-22 03:38:51.614906286 -0700
|
|
@@ -191,7 +191,6 @@ void generic_interconvert(To& to, const
|
|
template <class To, class From>
|
|
void generic_interconvert(To& to, const From& from, const mpl::int_<number_kind_rational>& /*to_type*/, const mpl::int_<number_kind_rational>& /*from_type*/)
|
|
{
|
|
- typedef typename component_type<number<From> >::type from_component_type;
|
|
typedef typename component_type<number<To> >::type to_component_type;
|
|
|
|
number<From> t(from);
|