|
Boost : |
Subject: Re: [boost] [Review Request] Multiprecision Arithmetic Library
From: Christopher Kormanyos (e_float_at_[hidden])
Date: 2012-04-14 17:51:09
> I've just committed your polynomial example, plus some simple integer examples.
Thanks for all that work, John.
I had a good day of refactoring and testing
and there is a lot to report.
Cool! Thanks for properly scaling the argument to mysin().
I believe the expected output in the comment should be
8.4147098480789650665250232163029899962256306079837106567275170999e-1
> Also tightened up some of the tests relating to cpp_dec_float -
> current SVN does not pass those tests - but the version you sent
> me with the modifications I mentioned
> (changing all *uses* of cpp_dec_float_max_digits10 to
> cpp_dec_float_total_digits10) does. I've also found a bug in my:
> template <unsigned D>
> cpp_dec_float& operator=(const cpp_dec_float<D>& f)
> and
> template <unsigned D>
> cpp_dec_float(const cpp_dec_float<D>& f)
> which needs fixing, but I'll let you complete whatever
> refactoring needs doing on those constants first.
> Cheers, John.
I refactored the constants and got the tests running WRT trunk.
Two tests did not compile at first: test_arithmetic.cpp (line 468)
and test_float_io.cpp (line 204). The culprit is the compiler's failure to
resolve frexp(Real, int64). The compiler required a plain
integer argument. I believe that the compiler is correct
(Visual Studio 2010, SP1, in this case). Do you also experience
this problem?
All tests except one pass with my refactored code.
Unfortunately, test_float_io.cpp fails when round tripping
from cpp_dec_float to a string with a large exponent back
to cpp_dec_float. I believe that this problem can be solved
because I identified a potentially incorrect rounding and/or
digit inclusion when creating an exponent string in my
original code.
I have candidate changes in:
* cpp_dec_float.hpp
*trig.hpp
* floating_point_examples.cpp
And I would request that you please take a look at that frexp()
issue mentioned above at your convenience.
Would you like me to commit my changes or would
you prefer to receive the files and commit them yourself?
I will continue investigating the failure in test_float_io.cpp.
It seems to be related to my code.
Best regards, Chris
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk