jzmaddock
68ea8d6a40
Multiprecision: split up test_sf_import_c99.cpp some more to avoid over-large object files.
2017-12-30 18:11:31 +00:00
jzmaddock
b35f1c8f61
Multiprecision.Integer conversions: Enforce uniform error handling when converting out-of-range narrowing integer conversions.
...
See https://svn.boost.org/trac10/ticket/13109
2017-12-30 09:34:35 +00:00
jzmaddock
37c813f764
Multiprecision.generic interconversions: decimal to rational conversions need to treat 0 as a special case.
...
Fixes: https://svn.boost.org/trac10/ticket/13148
2017-12-27 19:40:03 +00:00
jzmaddock
1d19b31132
Multiprecision: begin to fix VC12 failures from last series of commits.... still one to go.
2017-12-27 19:38:08 +00:00
jzmaddock
8d04a03850
Multiprecision: Fix msvc-14.1 C++17 warnings.
2017-12-26 19:22:21 +00:00
jzmaddock
a4b198e1b7
Multiprecision.cpp_bin_float: Fix errors in exponent usage when exponent type is a long long.
...
See https://svn.boost.org/trac10/ticket/13264 .
Fix previously unsupported situation: conversion of narrow cpp_bin_float to wider integer type.
See https://svn.boost.org/trac10/ticket/13301 .
Improve test coverage for cpp_bin_floats with large exponent types, and/or dynamic allocators.
Fix issue in numeric_limits::max() that caused a complement of a signed integer number to be taken when the allocator is dynamic.
Fix heuristic in exp() function that caused a crazy number of iterations to be taken when the exponent was very large.
2017-12-26 17:54:41 +00:00
jzmaddock
9e4b524d00
Add test cases for fixed bugs.
2017-12-26 17:03:03 +00:00
jzmaddock
4daa1baf6d
Multiprecision: disable explicit conversion operator if the target type is already constructible from *this.
...
Prevents ambiguity between the target types constructor and the conversion operator.
See https://github.com/boostorg/multiprecision/issues/30 .
2017-12-25 18:07:48 +00:00
jzmaddock
d2ed3f881a
Change expected value from logb(NaN) to largest/smallest value of the exponent type.
2017-06-12 09:11:13 +01:00
jzmaddock
e08fb96dce
CI: Make serialization tests link-static on mingw.
...
Serialization lib is too often broken on that platform.
2017-06-05 13:13:15 +01:00
jzmaddock
4c36616841
CI: Fix some remaining issues:
...
* Build with --hash as otherwise command line gets too long on Windows machines.
* Disable tests that generate object files too large for gcc on windows.
* Split cpp_dec_float tests up a bit to reduce object file size.
* Use boost::int46_t not ::int64_t in test case.
* Disable test_arithmetic_backend_concept.cpp with original mingw32 which has issues fixed in mingw64.
2017-06-04 19:36:59 +01:00
jzmaddock
6a1ab1bc34
CI: Fix paths in appveryor.yml.
...
Add missing import to Jamfile.
Disable test_cpp_int_lit for older msvc when under CI testing (known failure).
2017-06-01 08:59:28 +01:00
jzmaddock
10efe3d169
Add test case for https://github.com/boostorg/multiprecision/issues/21
...
Add appveyor test coverage.
2017-05-31 19:31:35 +01:00
jzmaddock
841e1d71bb
travis: move some test targets around trying to balance the load better.
...
Define CI_SUPPRESS_KNOWN_ISSUES when building and reduce the testing load when it's set.
2017-05-25 13:33:58 +01:00
jzmaddock
152ef49491
travis: still getting XCode timeouts, so split tests into smaller groups again.
2017-05-24 18:57:29 +01:00
jzmaddock
dd402577cc
Travis: enable more tests,
...
move some tests between aliases as some OSX tests still time out.
2017-05-23 18:08:26 +01:00
jzmaddock
66f19e829e
Fix warnings in sincos.ipp and test_round.cpp.
...
Move some targets out of the "conversions" alias to try to fix travis timeouts.
2017-05-23 13:38:06 +01:00
jzmaddock
2061889b77
Correct __float128 precision in cpp_bin_float.hpp
...
Enable some more travis tests.
2017-05-22 19:47:27 +01:00
jzmaddock
dbdda6aabc
Update float128 support test to check Boost.Config.
...
Enable more tests for travis.
2017-05-22 19:00:24 +01:00
jzmaddock
63151ee01c
Greatly simplify travis tests in the hopes they won't time out now...
2017-05-21 19:22:41 +01:00
jzmaddock
302c6f5c35
Fix up __float128 interoperability.
2017-05-21 11:16:29 +01:00
jzmaddock
76ad144e00
Disable new pow/exp underflow tests for interval types.
...
The resulting intervals are too wide for the tests to pass.
2017-05-15 12:03:32 +01:00
jzmaddock
f7dc0c74c5
Update test_pow.cpp/test_exp.cpp to handle types with no infinity.
...
Also adjusted start point of tests for float128.
2017-05-14 19:26:12 +01:00
jzmaddock
e691d23cd5
Fix for internal logic error in exp of large values.
...
See https://github.com/boostorg/multiprecision/issues/23 .
2017-05-14 09:37:49 +01:00
jzmaddock
f2a266da6d
Fix for trig functions of huge arguments.
...
See https://github.com/boostorg/multiprecision/issues/24 .
Note that this is not a particularly clever fix!
2017-05-12 18:50:03 +01:00
jzmaddock
34dc9d1966
Add more overflow tests.
2017-03-05 17:10:44 +00:00
jzmaddock
2876565d86
Add new test to Jamfile.
2017-03-05 17:04:29 +00:00
jzmaddock
f333808577
Increase testing of truncated integer arithmetic.
2017-03-05 17:02:10 +00:00
jzmaddock
7a2df8ff0a
Fix error handing in checked cpp_int multiply.
...
See https://github.com/boostorg/multiprecision/issues/16
2017-03-05 13:10:13 +00:00
jzmaddock
f4dceca5dc
Disable some float128 tests when running under older gcc versions -
...
no point in testing for old bugs in libquadmath.
2017-03-03 09:20:58 +00:00
jzmaddock
cd2bbcba5b
Fix bounded variable precision cpp_int's.
...
1) Removed some constexpr optimizations which were causing the code to fail to spot that truncation/overflow had occurred.
2) Change min/max code for numeric_limits to work for bounded variable precision types (this needs more work as the current code relies on being able to create a fixed-precision allocator-free type of equivalent width.
3) Add tests for bounded variable precision integers.
See: https://svn.boost.org/trac/boost/ticket/12798
2017-02-03 19:39:28 +00:00
jzmaddock
e108817e69
C99 tests: disable one more mpfr case fixed in recent releases.
2017-01-31 19:56:31 +00:00
jzmaddock
9341113864
C99 test: don't test buggy mpfr versions.
2017-01-31 19:54:49 +00:00
jzmaddock
7deabbe0d4
Previous commit was incomplete.
2017-01-31 19:46:26 +00:00
jzmaddock
c99bb4d418
Fix tests use of min/max types and correct type for the exponent of the number.
2017-01-31 19:41:35 +00:00
jzmaddock
6139de5732
Add MPFR version info to test.
2017-01-31 19:21:51 +00:00
jzmaddock
c81a5e410a
Fix GCC-ubuntu failures induced by previous commits
2017-01-30 23:08:34 +00:00
jzmaddock
8179baf40f
Fix cpp_int left shift in cases where there is bit-loss.
...
See https://svn.boost.org/trac/boost/ticket/12790 .
Also add dedicated test case.
2017-01-29 19:20:29 +00:00
jzmaddock
c0df5b6747
Change ilogb to consistently return the minimum value of the exponent type
...
(which may be either narrower or wider than the int return type specified in C99).
Change transcendental code which uses ilogb for loop termination, to check for
a minimal value return to correctly handle the case that the value has gone to zero.
See https://svn.boost.org/trac/boost/ticket/12625
2016-12-03 08:50:38 +00:00
jzmaddock
26ceb6ef38
Get cpp_dec_float, float128, and mpfr passing the C99 annex F tests.
...
See https://svn.boost.org/trac/boost/ticket/12581 .
2016-12-02 17:54:36 +00:00
jzmaddock
138a9055e2
Big commit to bring things into line with C99 Annex F.
...
See https://svn.boost.org/trac/boost/ticket/12581 .
2016-11-30 19:00:55 +00:00
jzmaddock
ec018d5099
Increase testing for rounding when subtracting cpp_bin_float.
2016-11-18 10:56:58 +00:00
jzmaddock
618ef47611
Fix subtraction of small quantities in cpp_bin_float.
...
See: https://svn.boost.org/trac/boost/ticket/12580
2016-11-17 19:02:11 +00:00
jzmaddock
0e2195fa78
Improve performance of convert_to<Float>.
...
See https://svn.boost.org/trac/boost/ticket/12527 .
2016-11-15 12:06:19 +00:00
jzmaddock
0230921010
Fix conversion of values to double that result in negative infinity.
...
See https://svn.boost.org/trac/boost/ticket/12527#comment:11 .
2016-11-12 19:31:45 +00:00
jzmaddock
0006227416
Change cpp_bin_float rounding code to round in arbitrary location and modify convert-to-float to use it.
...
See https://svn.boost.org/trac/boost/ticket/12527 .
2016-11-12 13:22:15 +00:00
jzmaddock
51686cae87
Fix sign when a conversion results in zero.
2016-11-06 13:12:44 +00:00
jzmaddock
4538e88a91
Fix integer sqrt for very small integers.
...
See https://svn.boost.org/trac/boost/ticket/12559 .
2016-11-06 11:58:54 +00:00
jzmaddock
059cb63649
Prevent double rounding when converting to a denormalized float.
...
See https://svn.boost.org/trac/boost/ticket/12527 .
2016-11-05 17:20:26 +00:00
jzmaddock
ed43204e92
Fix ceil cpp_bin_float to return signed zero when coming up from below.
...
Also fixes same issue in round/trunc.
See https://svn.boost.org/trac/boost/ticket/12525 .
2016-10-26 18:48:53 +01:00