1243 Commits

Author SHA1 Message Date
jzmaddock 9a53f1c92f float128.hpp: Update so our code works even when Q literals are not allowed.
See: https://github.com/boostorg/multiprecision/issues/83
2018-10-13 11:32:19 +01:00
jzmaddock ead98ee8b2 Disable exception specifications for early clang versions -
they can't cope with the expressions we have here.
2018-10-12 19:33:59 +01:00
jzmaddock f1c326198c Update documentation and version history.
[CI SKIP]
2018-10-07 08:47:03 +01:00
jzmaddock bd8599bac6 Fix up more functions which don't correctly guard precision changes.
Fixes: https://github.com/boostorg/multiprecision/issues/91
2018-10-06 19:31:41 +01:00
jzmaddock c974ad4bd9 Merge pull request #90 from boostorg/final_allocators
Support allocators declared as final
2018-10-02 08:55:22 +01:00
Glen Fernandes 0af8311c03 Support allocators declared as final 2018-09-30 16:12:02 -04:00
jzmaddock 1bef3eb7c0 Correct template parameter names. 2018-09-28 12:42:04 +01:00
jzmaddock e7e9a1abb2 Remove uses of deprecated Boost.Endian and switch to Boost.Predef alternative. 2018-09-28 12:00:40 +01:00
jzmaddock 67ec71b6d0 Fix up mpc conversions from mpfr_float. 2018-09-28 10:20:57 +01:00
jzmaddock ebac17cca6 Merge branch 'develop' of https://github.com/boostorg/multiprecision into develop 2018-09-27 19:37:24 +01:00
jzmaddock 6f2823f183 Fix up and test mpc conversions.
See https://github.com/boostorg/multiprecision/issues/78.
2018-09-27 19:37:07 +01:00
jzmaddock 7106fb7c96 Merge pull request #89 from glenfe/develop
Use allocator_traits for rebind when appropriate via rebind helper
2018-09-27 17:53:06 +01:00
jzmaddock e2ca031f08 Fix up assignment from string_view for mpf_float. 2018-09-27 13:09:25 +01:00
jzmaddock a3797ad7d4 Fix up mpfi changes for C++03 and C++17 2018-09-26 18:34:44 +01:00
Glen Fernandes d0b6d893b1 Use allocator_traits for rebind when appropriate via rebind helper 2018-09-26 02:02:31 -04:00
jzmaddock a66d50b87b Forward declare assign_components in mpfi.hpp.
Remove unused parameter in precision.hpp.
2018-09-25 18:32:49 +01:00
jzmaddock 92e4f6c0e4 APPoS: Fix up mpfi and mpf support, update tests.
See https://github.com/boostorg/multiprecision/issues/87.
2018-09-25 09:55:11 +01:00
jzmaddock e116eabe57 Merge pull request #88 from raffienficiaud/develop
Fix constexpr on void return types
2018-09-23 08:25:09 +01:00
Raffi Enficiaud 6d189ca99b Fix constexpr on void return types 2018-09-22 21:06:27 +02:00
jzmaddock 8f3b2c09f8 APPoS: Fix precision control when unrolling expression templates.
Add example of variable precision FP evaluation and update docs.
See https://github.com/boostorg/multiprecision/issues/75.
2018-09-22 09:38:50 +01:00
jzmaddock b74f403e80 Merge pull request #86 from raffienficiaud/develop
Narrowing ref-qualifiers to compile on VS2012/2013
2018-09-19 15:10:08 +01:00
Raffi Enficiaud 7f2f088be1 Narrowing ref-qualifiers to compile on VS2012/2013 2018-09-18 22:12:54 +02:00
jzmaddock d434cf9926 Add rvalue ref overloads to backend().
Fixes https://github.com/boostorg/multiprecision/issues/80
2018-09-18 09:20:02 +01:00
jzmaddock 7f5594c15c Merge pull request #82 from boostorg/APPoS
Apply "Assignment Preserves Precision of Source".
2018-09-16 19:21:36 +01:00
jzmaddock 62ad97a61a APPoS: Doc update. 2018-09-16 19:19:49 +01:00
jzmaddock 9d3326cb6d APPoS: Add assign with precision.
[CI SKIP]
2018-09-16 19:19:27 +01:00
jzmaddock 9f3ccdcb78 APPoS: Fix build error in determining the "precision" of string literals.
Update tests.
2018-09-15 10:58:56 +01:00
jzmaddock 01041bd7bf APPoS: correct test requirements. 2018-09-15 09:14:47 +01:00
jzmaddock c73ca04922 Fix msvc-12 and earlier failure for lack of explicit conversion operators. 2018-09-15 09:12:21 +01:00
jzmaddock 64115b729a APPoS: Add missing files. 2018-09-07 12:57:46 +01:00
jzmaddock 8d281cc47f Apply "Assignment Preserves Precision of Source".
APPoS for short, throughout the library including in mixed precision arithmetic which should now always promote to the highest precision of any of the arguments.
2018-09-06 20:37:56 +01:00
jzmaddock c5ff8c93ca Merge pull request #71 from boostorg/issue66
Add support for construction from a std::string_view.
2018-08-18 10:37:58 +01:00
jzmaddock 27c80085b1 Merge branch 'develop' into issue66 2018-08-18 10:37:39 +01:00
jzmaddock ba0bfe64e0 Guard use of std::move by BOOST_NO_CXX11_RVALUE_REFERENCES. 2018-08-18 09:38:04 +01:00
jzmaddock 5daa4e2fa7 Fix overloads of binary functions to allow mixed types in expression templates.
For example complex+real expression.
Mixed expression+expression is not currently supported (it's complicated!).
Fixes: https://github.com/boostorg/multiprecision/issues/69.
2018-08-18 09:36:04 +01:00
jzmaddock 6b03db9e19 Merge branch 'impl-octuple-float' of https://github.com/e-kwsm/multiprecision into develop
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
2018-08-17 12:19:45 +01:00
jzmaddock aa56ab85a5 Document how to assign both value and precision in the variable precision types.
Add tests for the method suggested.
See https://github.com/boostorg/multiprecision/issues/72.
2018-08-17 11:01:46 +01:00
jzmaddock cf89e2063e Merge pull request #70 from boostorg/issue63
Fix more variable precision issues:
2018-08-17 09:10:12 +01:00
jzmaddock 314383dab9 string_view support:
Fix tests that aren't testing number (but boost::rational).
Add assignment support.
See https://github.com/boostorg/multiprecision/issues/66
2018-08-17 09:09:38 +01:00
jzmaddock 15330801e0 Add support for construction from a std::string_view.
See https://github.com/boostorg/multiprecision/issues/66.
2018-08-16 20:11:10 +01:00
jzmaddock bbcac7c78b Fix more variable precision issues:
Make sure that temporaries use the same precision as the target.
Make sure that construction from mpfr_float's copies their precision.
2018-08-16 19:21:24 +01:00
jzmaddock 081076ad7b Fix initialization of constants.
Fixes: https://github.com/boostorg/multiprecision/issues/67.
2018-08-16 18:10:12 +01:00
jzmaddock eed306e9c5 Correct change of precision in existing mpc_complex.
Correct expected test result on assignment to variable of differing precision.
See https://github.com/boostorg/multiprecision/issues/65.
2018-08-15 19:32:14 +01:00
jzmaddock d0bc8a0d4e Tidy up more inconsistencies in precision setting.
See https://github.com/boostorg/multiprecision/issues/62.
2018-08-15 18:24:36 +01:00
jzmaddock 2d8e5c1d25 Add overloads for construction at specified precision.
Also document and update docs.
See https://github.com/boostorg/multiprecision/issues/62.
2018-08-15 13:40:47 +01:00
jzmaddock 73c920d8f6 Make assignment of infinity or Nan to a cpp_int a runtime error.
Fixes https://github.com/boostorg/multiprecision/issues/58.
2018-08-11 19:52:12 +01:00
jzmaddock 37f0e3a7c2 MPC: make sure any internal temporaries used during string processing are constructed at the right precision.
See https://github.com/boostorg/multiprecision/issues/61.
2018-08-10 18:43:37 +01:00
jzmaddock 4ba21a07b6 Document behaviour of copy/move/assignment on variable precision types.
[CI skip]
2018-08-10 18:41:47 +01:00
jzmaddock bc34128da1 Disable rvalue tests when BOOST_NO_CXX11_RVALUE_REFERENCES is defined. 2018-08-09 10:54:28 +01:00
jzmaddock 4df64fc7f1 Fix test failures from previous commit and extend CI coverage to MPC and MPFI backends.
See https://github.com/boostorg/multiprecision/issues/60.
2018-08-09 09:09:08 +01:00