Commit Graph

447 Commits

Author SHA1 Message Date
jzmaddock
5f49ffc2d7 Fix fencepost-error in subtraction code found while testing rounding. 2016-03-22 08:14:29 +00:00
jzmaddock
eec1c310d5 Add support for denormals to float128.
Fixes https://svn.boost.org/trac/boost/ticket/12075
2016-03-20 09:28:51 +00:00
jzmaddock
57333128e8 Allow code and tests to compile without exceptions.
See https://svn.boost.org/trac/boost/ticket/12070.
2016-03-17 11:50:06 +00:00
jzmaddock
a96bea66e1 Change cpp_bin_float::convert_to to round correctly to float.
Also add another test case from https://svn.boost.org/trac/boost/ticket/12039,
plus test case to check rounding of ties.
2016-03-15 18:24:04 +00:00
jzmaddock
8a8b2211d4 Change cpp_bin_float.convert_to<>() conversion routine to avoid double-rounding.
See https://svn.boost.org/trac/boost/ticket/12039.
2016-03-15 08:15:35 +00:00
jzmaddock
d9bd529f71 Fix boost::rational comparison operators.
Add more tests for the above.
2016-03-12 08:54:59 +00:00
jzmaddock
df07c990af Change declaration order to keep Oracle C++ happy. 2016-03-11 18:30:36 +00:00
jzmaddock
6a15426f2b Basic fix for Oracle C++ in C++11 mode. 2016-03-11 12:21:52 +00:00
John Maddock
a55e2c15a1 Misc minor workarounds for Oracle C++ 2016-03-08 18:00:12 +00:00
jzmaddock
57d36d1396 Merge branch 'develop' of https://github.com/boostorg/multiprecision into develop 2016-03-03 17:59:01 +00:00
jzmaddock
ecc885bf96 Disable constexpr in one case for gcc-4.6 and earlier 2016-03-03 17:58:16 +00:00
jzmaddock
f9c8f9ec09 Add some needed casts for cases where limb_type is wider than unsigned int. 2016-03-03 10:52:03 +00:00
jzmaddock
53515e9a96 Add memcpy optimized import of binary data for cpp_int.
Fixes: https://svn.boost.org/trac/boost/ticket/9235.
2016-02-25 19:01:11 +00:00
jzmaddock
cb1a41835f Use memmove for bitshifts when machine is little endian.
See https://svn.boost.org/trac/boost/ticket/9233.
2016-02-24 12:06:05 +00:00
jzmaddock
2f635b45ff Fix right shifting of negative integers.
See https://svn.boost.org/trac/boost/ticket/11999.
2016-02-19 19:29:40 +00:00
jzmaddock
f57bd6b31a Add expression template enabled min/max overloads. 2016-02-18 18:37:18 +00:00
jzmaddock
df773c7ab2 Disable explicit conversions on expression templates when the target type is implicitly constructible from the number type.
See https://svn.boost.org/trac/boost/ticket/11922
2016-01-20 12:52:20 +00:00
jzmaddock
59395e2754 Fix integer stream input so it doesn't skip characters.
See https://svn.boost.org/trac/boost/ticket/11857
Update tests to match.
2015-12-22 18:28:23 +00:00
jzmaddock
5af4564698 Restrict noexcept on converting constructors.
See https://svn.boost.org/trac/boost/ticket/11826.
2015-12-01 15:58:26 +00:00
jzmaddock
360fcc9306 Add missing return statement.
See https://svn.boost.org/trac/boost/ticket/11762
2015-10-29 12:39:53 +00:00
jzmaddock
1261cc6b8a Don't use long double asin if it's not available. 2015-10-29 11:29:26 +00:00
jzmaddock
7dfea115f8 Fix cpp_bin_float conversions,
fix inverse trig logic to get as many digits as possible from std::asin.
Add test case.
Fixes: https://svn.boost.org/trac/boost/ticket/11764
2015-10-29 09:58:28 +00:00
jzmaddock
e28b1be017 Fix order-of-evalution bug in bitmask code.
Allow mpfr_float to be used with Boost.Math by adding needed specializations.
2015-10-22 10:11:16 +01:00
jzmaddock
3d454688f1 Fix for cpp_int_backend sometimes having a private ::value_type due to inheritance. 2015-10-15 11:35:22 +01:00
jzmaddock
dcd0ca9811 Fix copyright declaration. 2015-10-06 18:55:01 +01:00
jzmaddock
a1eafc4228 Fix division bug discovered by https://svn.boost.org/trac/boost/ticket/11648 2015-09-22 13:39:26 +01:00
jzmaddock
a752269c1f Fix arithmetic failure when a string has no digits. 2015-09-20 13:12:04 +01:00
jzmaddock
100afbcce8 Suppress some msvc warnings. 2015-09-20 12:00:09 +01:00
jzmaddock
d78767ef95 Add cpp_int import/export code.
See: https://svn.boost.org/trac/boost/ticket/11590.
2015-09-20 08:45:03 +01:00
jzmaddock
e0f74704a0 Improve string assign to cpp_int:
* Make exception safe (strong guarantee).
* Improve performance for hexadecimal and octal assignment.
See: https://svn.boost.org/trac/boost/ticket/11590
2015-09-15 18:16:20 +01:00
jzmaddock
fdbeedc609 Fix behaviour of fmod for negative divisor.
And add more tests, see https://svn.boost.org/trac/boost/ticket/11641.
2015-09-11 17:13:34 +01:00
jzmaddock
8ba486eb3a Make math::tools::digits noexcept when math version is. 2015-08-23 17:49:30 +01:00
jzmaddock
92a56b5dec Add __float128 support to bits_of, correct mpl iterator dereferencing. 2015-08-23 17:48:51 +01:00
jzmaddock
ea7d247018 Qualify call to is_floating_point. 2015-08-23 17:47:28 +01:00
jzmaddock
9e3115f376 Add special case for n == 2. 2015-08-10 12:49:43 +01:00
jzmaddock
7e457161e6 Fix digits10 to use +3 not +2 which doesn't always add enough. 2015-07-19 17:47:38 +01:00
jzmaddock
9abf33884b Don't use conditional noexcept with gcc-4.6.x as it causes issues.
See https://svn.boost.org/trac/boost/ticket/11402
2015-06-18 09:08:52 +01:00
jzmaddock
a04bfdb654 Fix definitions of numeric_limits out-of-line members. 2015-06-16 18:40:59 +01:00
jzmaddock
a955881d30 Merge branch 'master' of https://github.com/ahamez/multiprecision into develop 2015-06-09 19:13:23 +01:00
Alexandre Hamez
188f0a7abb Fix exception message 2015-06-09 13:54:59 +02:00
jzmaddock
3d6d5d943a Simplify code so msvc-12 can cope.
Errors only show up in certain complex cases, most notably in Boost.Random's test suite.
2015-06-03 18:52:33 +01:00
jzmaddock
4ed6c3e44b Remove unused typedef. 2015-06-03 18:51:41 +01:00
jzmaddock
2f9faea67d Fix signed/unsigned comparison. 2015-06-03 18:51:14 +01:00
jzmaddock
7f0e3b78c3 Remove unneeded typedef. 2015-06-02 18:27:13 +01:00
jzmaddock
f681020a16 Add missing #include. 2015-06-02 18:25:32 +01:00
jzmaddock
e5b678a673 Fix issue with ambiguous conversions. 2015-06-02 18:07:11 +01:00
jzmaddock
175db1375f Fix typecast. 2015-06-02 13:41:44 +01:00
jzmaddock
ea8586a9cf Fix signed exclusive-bitwise-or to handle carry correctly.
See https://svn.boost.org/trac/boost/ticket/11364.
2015-06-02 09:14:16 +01:00
jzmaddock
d711ce23df Fix mixed mode comparison operators.
See https://svn.boost.org/trac/boost/ticket/11328.
And added tests for mixed mode comparisons and other operators.
2015-06-01 18:11:11 +01:00
jzmaddock
7bf2e838cc Fix MSVC analyzer warnings. 2015-05-31 09:18:23 +01:00