|
Boost Users : |
From: Jordan Kyriakidis (jordan.kyriakidis_at_[hidden])
Date: 2007-09-21 23:03:24
The function
template <class V> void assign_large_int(V a)
inside boost::math::ntl::RR contains the lines
t = static_cast<double>(a & 0xffff);
m_value += ldexp(RR(t), exp).value();
My compiler (powerpc-apple-darwin8-g++-4.0.1) complains about the
second line:
error: cannot convert 'boost::math::ntl::RR' to 'double' for
argument '1' to 'double ldexp(double, int)'
I assume this is because it cannot see the function definition for
RR ldexp(RR r, int exp)
defined further down in RR.hpp. This trivial patch fixes the error
for me:
math_toolkit/boost/math/bindings$ svn diff rr.hpp
Index: rr.hpp
===================================================================
--- rr.hpp (revision 39435)
+++ rr.hpp (working copy)
@@ -25,6 +25,9 @@
namespace ntl
{
+class RR;
+RR ldexp(RR r, int exp);
+
class RR
{
public:
math_toolkit/boost/math/bindings$
but there may (probably?) be similar errors for the other functions.
Cheers,
Jordan
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net