Boost logo

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