Get rid of MSVC's __int64
Use either int64_t, uint64_t or long long and unsigned long long, defined as per C++11 standard
This commit is contained in:
@@ -43,7 +43,7 @@ using boost::math::fabs;
|
||||
#include <boost/detail/workaround.hpp>
|
||||
#include <boost/config/no_tr1/cmath.hpp>
|
||||
|
||||
namespace std{
|
||||
namespace std{
|
||||
|
||||
#ifdef BOOST_NO_STDC_NAMESPACE
|
||||
using :: atan2;
|
||||
@@ -142,14 +142,14 @@ inline complex<double> polar(const long long& rho, const long long& theta = 0)
|
||||
inline complex<double> polar(const unsigned long long& rho, const unsigned long long& theta = 0)
|
||||
{ return ::std::polar(static_cast<double>(rho), static_cast<double>(theta)); }
|
||||
#elif defined(BOOST_HAS_MS_INT64)
|
||||
inline complex<double> polar(const __int64& rho, const __int64& theta = 0)
|
||||
inline complex<double> polar(const int64_t& rho, const int64_t& theta = 0)
|
||||
{ return ::std::polar(static_cast<double>(rho), static_cast<double>(theta)); }
|
||||
inline complex<double> polar(const unsigned __int64& rho, const unsigned __int64& theta = 0)
|
||||
inline complex<double> polar(const uint64_t& rho, const uint64_t& theta = 0)
|
||||
{ return ::std::polar(static_cast<double>(rho), static_cast<double>(theta)); }
|
||||
#endif
|
||||
|
||||
template<class T, class U>
|
||||
inline complex<typename boost::tr1_detail::promote_to_real<T, U>::type>
|
||||
template<class T, class U>
|
||||
inline complex<typename boost::tr1_detail::promote_to_real<T, U>::type>
|
||||
polar(const T& rho, const U& theta)
|
||||
{
|
||||
typedef typename boost::tr1_detail::promote_to_real<T, U>::type real_type;
|
||||
@@ -210,7 +210,7 @@ inline complex<typename boost::tr1_detail::largest_real<T, U>::type>
|
||||
cast2_type y1(y);
|
||||
return std::pow(x1, y1);
|
||||
}
|
||||
template<class T, class U>
|
||||
template<class T, class U>
|
||||
inline complex<typename boost::tr1_detail::promote_to_real<T, U>::type>
|
||||
pow (const complex<T>& x, const U& y)
|
||||
{
|
||||
@@ -223,7 +223,7 @@ inline complex<typename boost::tr1_detail::promote_to_real<T, U>::type>
|
||||
return std::pow(x1, y1);
|
||||
}
|
||||
|
||||
template<class T, class U>
|
||||
template<class T, class U>
|
||||
inline complex<typename boost::tr1_detail::promote_to_real<T, U>::type>
|
||||
pow (const T& x, const complex<U>& y)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user