
Boost : 
Subject: Re: [boost] [math] Comeau can't match math::tools::fmod_workaround
From: Mateusz Loskot (mateusz_at_[hidden])
Date: 20091126 14:41:59
Mateusz Loskot wrote:
> Hi,
>
> I'm not sure if I should submit this issue directly to Trac, so I
> decided to post it here first. Compiling Boost.Math using Comeau +
> GCC on Linux throws error that suggests mismatch of dobule and long
> double where single type T is expected:
I've just found very similar issue in other place. It is std::pow
specialisations seem ambiguous for Comeau C/C++ compiler.
"../../../boost/math/special_functions/spherical_harmonic.hpp", line 39:
error:
more than one instance of overloaded function "pow" matches the
argument list:
function "std::pow(const std::complex<long double> &, const long
double &)"
function "std::pow(const double &, const
std::complex<double> &)"
function "std::pow(long double, long double)"
function "std::pow(double, int)"
function "std::pow(double, double)"
argument types are: (double, long double)
T leg = detail::legendre_p_imp(n, m, x, pow(fabs(sin_theta), T(m)),
pol);
^
detected during:
instantiation of "T
boost::math::detail::spherical_harmonic_prefix(unsigned
int, unsigned int, T, const Policy &) [with T=long
double, Policy=c_policies::c_policy]" at line 71
instantiation of "T
boost::math::detail::spherical_harmonic_r(unsigned
int,
int, T, T, const Policy &) [with T=long double,
Policy=c_policies::c_policy]" at line 172
I thought it may be of interest.
Best regards,
 Mateusz Loskot, http://mateusz.loskot.net Charter Member of OSGeo, http://osgeo.org
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk