Commit Graph

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