2
0
mirror of https://github.com/boostorg/math.git synced 2026-02-21 03:02:16 +00:00

Moved real_concept and std_real_concept overloads of the rounding and truncation functions into the same namespace as the classes so that they can be found via ADL.

Updated the tests to cope with the change.
Updated library configuration to cope with the change.
Made sure that the rounding and truncation functions are all correctly forward declared.

[SVN r44612]
This commit is contained in:
John Maddock
2008-04-20 10:58:20 +00:00
parent ade4cc09c4
commit bde28692c3
6 changed files with 232 additions and 181 deletions

View File

@@ -347,19 +347,25 @@ void instantiate(RealType)
boost::math::expint(i, i, pol);
boost::math::zeta(v1, pol);
boost::math::zeta(i, pol);
boost::math::trunc(v1, pol);
boost::math::itrunc(v1, pol);
boost::math::ltrunc(v1, pol);
boost::math::round(v1, pol);
boost::math::iround(v1, pol);
boost::math::lround(v1, pol);
boost::math::modf(v1, &v1, pol);
boost::math::modf(v1, &i, pol);
boost::math::modf(v1, &l, pol);
//
// These next functions are intended to be found via ADL:
//
BOOST_MATH_STD_USING
trunc(v1, pol);
itrunc(v1, pol);
ltrunc(v1, pol);
round(v1, pol);
iround(v1, pol);
lround(v1, pol);
modf(v1, &v1, pol);
modf(v1, &i, pol);
modf(v1, &l, pol);
#ifdef BOOST_HAS_LONG_LONG
boost::math::lltrunc(v1, pol);
boost::math::llround(v1, pol);
boost::math::modf(v1, &ll, pol);
using boost::math::lltrunc;
using boost::math::llround;
lltrunc(v1, pol);
llround(v1, pol);
modf(v1, &ll, pol);
#endif
boost::math::pow<2>(v1, pol);
//