diff --git a/include/boost/math/special_functions/detail/unchecked_factorial.hpp b/include/boost/math/special_functions/detail/unchecked_factorial.hpp index 35b196896..eb8927a26 100644 --- a/include/boost/math/special_functions/detail/unchecked_factorial.hpp +++ b/include/boost/math/special_functions/detail/unchecked_factorial.hpp @@ -403,6 +403,11 @@ struct max_factorial BOOST_STATIC_CONSTANT(unsigned, value = 100); }; +#ifndef BOOST_NO_INCLASS_MEMBER_INITIALIZATION +template +const unsigned max_factorial::value; +#endif + } // namespace math } // namespace boost diff --git a/include/boost/math/special_functions/digamma.hpp b/include/boost/math/special_functions/digamma.hpp index a1008d2bb..3765ca2db 100644 --- a/include/boost/math/special_functions/digamma.hpp +++ b/include/boost/math/special_functions/digamma.hpp @@ -197,7 +197,7 @@ T digamma_imp_1_2(T x, const mpl::int_<0>*) g -= root3; g -= root4; g -= root5; - T r = tools::evaluate_polynomial(P, x-1) / tools::evaluate_polynomial(Q, x-1); + T r = tools::evaluate_polynomial(P, T(x-1)) / tools::evaluate_polynomial(Q, T(x-1)); T result = g * Y + g * r; return result; diff --git a/include/boost/math/special_functions/spherical_harmonic.hpp b/include/boost/math/special_functions/spherical_harmonic.hpp index 37968eadc..33b257448 100644 --- a/include/boost/math/special_functions/spherical_harmonic.hpp +++ b/include/boost/math/special_functions/spherical_harmonic.hpp @@ -36,7 +36,7 @@ inline T spherical_harmonic_prefix(unsigned n, unsigned m, T theta, const Policy T sin_theta = sin(theta); T x = cos(theta); - T leg = detail::legendre_p_imp(n, m, x, pow(fabs(sin_theta), T(m)), pol); + T leg = detail::legendre_p_imp(n, m, x, static_cast(pow(fabs(sin_theta), T(m))), pol); T prefix = boost::math::tgamma_delta_ratio(static_cast(n - m + 1), static_cast(2 * m), pol); prefix *= (2 * n + 1) / (4 * constants::pi());