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
jzmaddock
b7e1992b26
Fix right shifting of negative values in cpp_int.
...
To give the same values as 2's complement representations,
though not the same bit-pattern.
Updated tests.
Fixed assignment from float to not rely on shifting negative values.
2015-05-30 11:39:39 +01:00
jzmaddock
72c817e985
Remove all uses of std::abs.
...
Sadly it's still not implemented for all integer types on
some platforms, see: https://svn.boost.org/trac/boost/ticket/11311
Plus "unsigned_abs" does what we actually want in most cases - ie
does the right thing when the value is std::numeric_limits<T>::min()
without invoking undefined behavior.
2015-05-16 11:16:11 +01:00
jzmaddock
690a177099
Ooops, fix previous commit.
2015-04-25 11:33:41 +01:00
jzmaddock
2b88456016
Add workaround for GCC-5.1.0 numeric_limits.
...
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65883
2015-04-25 11:31:17 +01:00
jzmaddock
c36e15bd29
Fix self assignment bug in mpfr_float
...
Fixes: https://svn.boost.org/trac/boost/ticket/11193
2015-04-17 08:30:45 +01:00
jzmaddock
2919a6375e
Fix digits10 calculation so it gets it correct in the 113-bit precision case.
2015-04-07 18:46:23 +01:00
jzmaddock
b0133661eb
Fix digit count for 128-bit quad-float types.
...
As per discussion here: http://www.exploringbinary.com/7-bits-are-not-enough-for-2-digit-accuracy/comment-page-1/#comment-9358
2015-04-07 17:57:57 +01:00
jzmaddock
4f16c26457
Fix NaN comparisons.
...
Add tests to verify comparisons of NaN's are unordered.
Fix operators to check for unordered comparisons.
Fixes: https://svn.boost.org/trac/boost/ticket/11159
2015-04-03 09:35:58 +01:00
Marcel Raad
17f5ed45c2
Suppress MSVC warning
...
warning C4244: 'argument': conversion from 'int' to 'char', possible loss of data
This caused the Boost.Units regression tests to fail on MSVC because of warnings-as-errors.
2015-04-02 11:38:48 +02:00
jzmaddock
0de03d129d
Replace long long with boost::long_long_type to avoid GCC warnings/errors in pedantic mode.
...
Fix missing return statements on new long long code.
2015-03-29 17:53:07 +01:00
jzmaddock
3719752df5
Fix conversions from long long to take long sized chunks.
...
Also fixed some bitmasks, and added feature-detection checks.
2015-03-29 11:34:20 +01:00
jzmaddock
ee3dbfbb77
Bring into line with update to Boost.Random.
2015-03-15 11:50:19 +00:00
jzmaddock
f4a61d5f47
Add explicit conversion operators and tests to expression templates.
2015-03-12 17:55:13 +00:00
jzmaddock
51a320e98a
Fix for stream reading: handles more formats now, including things like CSV lists.
2015-03-11 19:25:14 +00:00
jzmaddock
19eb190929
Previous fix for Intel-15 breaks clang, fix.
2015-03-08 13:09:53 +00:00
jzmaddock
b9ac721e10
Workaround for MSVC that seems not to find the default_ops overload in some situations.
2015-03-06 18:56:13 +00:00
jzmaddock
10a68c89f7
Update to allow mixed number comparisons.
2015-03-03 19:06:04 +00:00
jzmaddock
10bc4eb774
Workaround for Solaris compiler.
2015-02-22 19:00:36 +00:00
jzmaddock
e175ed2bfe
Cast std::string::size_type arguments to std::string functions so there can be no ambiguity in the calls, see https://svn.boost.org/trac/boost/ticket/11029
2015-02-22 17:58:34 +00:00
jzmaddock
f970a18141
Make frexp a non-expression template function so it functions even when the return value is ignored. Fixes issue: https://svn.boost.org/trac/boost/ticket/10993
2015-02-22 12:49:32 +00:00
jzmaddock
a70cad05fb
Add workaround for Oracle type-conversion bug.
2015-02-21 19:09:54 +00:00
jzmaddock
3b35dd8e68
Fix for Intel constexpr issue.
2015-02-13 17:51:30 +00:00
jzmaddock
f066d288cd
Partly back out previous patch - not all the workarounds were required after all.
2015-02-12 13:32:01 +00:00
jzmaddock
8a7fd7cf1a
Fixes for Intel-15 compile failures.
2015-02-12 13:14:10 +00:00
jzmaddock
0cfe21cf1c
Fix some more noexcept failures, and tighten up the tests.
2015-02-10 16:51:36 +00:00
jzmaddock
9927d49cb9
Many more fixes and tests for noexcept issues, see https://svn.boost.org/trac/boost/ticket/10990
2015-02-08 18:16:31 +00:00
jzmaddock
33630bc407
Clean up and enhance noexcept support, add tests to validate cpp_int and cpp_rational are performing as expected. See https://svn.boost.org/trac/boost/ticket/10990
2015-02-07 17:54:09 +00:00
jzmaddock
ca1f469772
Assert preconditions that are broken in https://svn.boost.org/trac/boost/ticket/10924
2015-02-06 19:02:37 +00:00
jzmaddock
98ff84b860
Mark some more functions with conditional noexcept support, also simplified/removed some casts which weren't required.
2015-02-06 18:33:58 +00:00
jzmaddock
4340817fd8
If there are no long double functions be very careful where we set the limits as frexp/ldexp called with a value outside the range of a double will return +INF, which then causes cpp_dec_float to go into an infinite loop. Fixes Cygwin GCC issue. See https://svn.boost.org/trac/boost/ticket/10924
2015-02-06 18:32:31 +00:00
jzmaddock
184d9847b0
Fix cygwin build - don't use itrunc on platforms with no long double support.
2015-02-06 18:30:26 +00:00
jzmaddock
7e18be7902
Add missing out-of-line definitions.
2015-02-06 18:29:33 +00:00
jzmaddock
f57ecf8290
Fix type traits dispatching to work with pending new version.
2015-01-29 11:47:32 +00:00
Jürgen Hunold
37815e5dce
adjust to move of gcd/lcm from math to integer library
2015-01-23 18:01:34 +01:00
jzmaddock
92748f6327
Add missing #include.
2015-01-19 18:34:00 +00:00
Jürgen Hunold
bc8ce20058
adjust to move of gcd/lcm from math to integer library
2015-01-19 11:06:18 +01:00
jzmaddock
55bbda0c31
Fix rare bug that breaks invariants in exp.
2014-10-09 16:41:21 +01:00
jzmaddock
63f53c48f3
Merge branch 'develop' of https://github.com/boostorg/multiprecision into develop
2014-10-09 16:13:21 +01:00
jzmaddock
761c7c8c38
Fix some C++03 mode failures.
2014-10-09 16:12:56 +01:00
jzmaddock
f2522106f5
Fix case where intmax_t is smaller than long long, also apply gcc-4.6 workaround to Intel which has the same bug (all versions to 15.0).
2014-09-23 19:42:58 +01:00
jzmaddock
cd1e62a4b0
Fix for issue https://svn.boost.org/trac/boost/ticket/10405
...
Change code snippets in docs to be complete programs to avoid any confusion.
Fix failure caused by change to Boost.Random.
Regenerate docs.
2014-08-29 18:54:09 +01:00
jzmaddock
290c3da308
Fix typos.
2014-07-16 18:16:54 +01:00
jzmaddock
296a95a1a2
Merge branch 'develop' into Issue_10085
2014-06-30 11:53:31 +01:00
jzmaddock
c2c2fd6d79
Enable correct rounding for mpq_rational -> floating point conversions.
2014-06-29 13:30:15 +01:00
jzmaddock
f779941205
Fix warnings and compiler errors, plus rounding error in generic_interconvert.hpp.
...
Add comments about rounding to gmp.hpp.
Update tests to check mpq_rational.
2014-06-29 10:36:19 +01:00