Commit Graph

79 Commits

Author SHA1 Message Date
John Maddock
684b232782 More waring fixes for gcc and clang 2019-10-24 21:39:52 +01:00
pabristow
86a7142d96 Edits to satisfy the picky inspect.exe program, now passing local tests using MSVC 14.2, except for six cpp_int*serial*.txt testdata files missing licence. 2019-08-14 18:02:10 +01:00
jzmaddock
877753246f clang-format: apply new format to (almost) everything. 2019-07-15 18:25:17 +01:00
Tinko Bartels
8740e3863b Replace broken links. 2019-04-23 08:51:47 +02: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
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
27c80085b1
Merge branch 'develop' into issue66 2018-08-18 10:37:39 +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
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
d5c7a7f701 Fix string parsing of complex types and update tests. Fixes https://github.com/boostorg/multiprecision/issues/59 2018-08-05 20:38:51 +01:00
jzmaddock
bbe819f803 Conversion of between unsigned ints should be truncating. 2018-05-16 21:26:08 +01:00
jzmaddock
aff777636d
Merge pull request #48 from boostorg/shift_negative
Remove warning on shifting negative value.
2018-05-11 19:08:26 +01:00
jzmaddock
73de592835 complex: re-enable some MPC specific tests. 2018-04-17 18:51:13 +01:00
jzmaddock
c1308b5cf1 Complex: Lot's of small updates to complete complex_adaptor and tests. 2018-04-17 18:49:09 +01:00
jzmaddock
7eee55776e complex: add complex_adaptor plus first tests. 2018-04-13 19:25:15 +01:00
jzmaddock
e6989777cf complex/mpc: Add overloads of real/imag setters for all the types supported by mpfr. 2018-03-31 11:34:49 +01:00
jzmaddock
24cb1375fd mpc/complex: Add real/imag setters.
[CI SKIP]
2018-03-31 11:09:29 +01:00
jzmaddock
c68e8076b8 Complex/mpc: another try at fixing up the 2 argument constructor.
[CI SKIP]
2018-03-22 14:54:13 +00:00
jzmaddock
1a32ade24c Complex/mpc: Add support for 2-arg construction from args of different types.
Add first cut at Eigen compatibility test suite.
2018-03-21 20:10:21 +00:00
jzmaddock
04b1191732 complex/mpc: add support for interconversions to and from std::complex. 2018-03-18 17:33:28 +00:00
jzmaddock
4196c6ae62 Complex: Add support for single argument polar().
Update unary functions to handle case where we're creating a result type which is not the same as the function result type - for example when dealing with mixed scalar and complex arithmetic.
2018-03-17 19:08:36 +00:00
Nick Thompson
2144154954 Use literal ints rather than shifted negative values. 2018-03-17 15:23:34 +08:00
jzmaddock
8d2bd0a1d3 complex/mpc: Add value_type to class number, and overloads for polar function.
Split up one concept check that was generating over-large object file sizes.
2018-03-16 20:12:06 +00:00
jzmaddock
578f9cc7b9 complex/mpc: support the non-member complex functions norm/conj etc from non-complex types. 2018-03-14 20:13:51 +00:00
Nick Thompson
5b3965b296 Remove warning on shifting negative value. 2018-03-13 15:36:32 +08:00
jzmaddock
cd3ee9e096 Merge branch 'develop' into complex
# Resolved Conflicts:
#	test/test_arithmetic.hpp
2018-03-12 18:35:38 +00:00
jzmaddock
3a5b6c3aa6 complex/mpc: another attempt at getting real/imag working with gcc. 2018-03-12 18:31:20 +00:00
John Maddock
9c891b7220 complex/mpc: finally get test case compiling with gcc/clang, though not yet the real() and imag() member functions. 2018-03-12 18:02:09 +00:00
jzmaddock
496ce3dbac complex/mpc: add hashing support, fix up a few gcc compile failures.
Add hashing support to concept checks and fix up most of the failures bar one obscure one.
2018-03-11 19:10:37 +00:00
jzmaddock
ead2781235 Complex/mpc: Add remaining non-member functions for complex types. 2018-03-11 12:55:47 +00:00
jzmaddock
032070a4df complex/mpc: more or less complete the transcendental functions. 2018-03-10 20:23:51 +00:00
jzmaddock
c441dca055 Complex/MPC: Start adding non-member functions.
Strip out more unneeded code from mpc.hpp.
2018-03-10 19:41:01 +00:00
jzmaddock
e94f507f64 complex/mpc: delete more irrelevant stuff and add initial support for real() and imag() accessors. 2018-03-10 13:41:55 +00:00
Nick Thompson
8867d6ca09 Swap out boost::math::gcd to boost::integer::gcd 2018-03-04 15:56:25 -08:00
jzmaddock
580905c528 Complex: Get arithmetic tests passing. 2018-03-04 18:31:17 +00:00
jzmaddock
a5ac1fbd4a Complex: mpc.hpp now compiles and passes test_arithmetic.hpp.
Disabled relational operators for complex types.
2018-03-04 17:53:38 +00:00
jzmaddock
d3f53c6c6d MPC: Get a few more things working. 2018-03-04 13:05:28 +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
75dc2ebb33 Switch floating point types to be zero initialized when default constructed.
This is now consistent between types, and matches what explicitly initialized built in types do.
See https://svn.boost.org/trac/boost/ticket/12500.
2016-10-23 19:12:56 +01:00
jzmaddock
cd20cf7db4 Merge branch 'develop' into c99
# Resolved Conflicts:
#	doc/html/boost_multiprecision/indexes/s01.html
#	doc/html/boost_multiprecision/indexes/s02.html
#	doc/html/boost_multiprecision/indexes/s03.html
#	doc/html/boost_multiprecision/indexes/s04.html
#	doc/html/index.html
#	include/boost/multiprecision/detail/default_ops.hpp
2016-09-23 09:01:56 +01:00
jzmaddock
e1b66e8e7e C99: Initial fma support. 2016-09-02 16:48:37 +01:00
jzmaddock
6e3f814cec Fix bug in self assignment of complex expression templates.
Fixes https://svn.boost.org/trac/boost/ticket/12408.
2016-08-27 18:27:54 +01:00
jzmaddock
11d6776b3d Change negate to negate_value to avoid gcc-4.4 error. 2016-08-14 18:46:42 +01:00
jzmaddock
7c34000953 Add missing qualifier to isnan call. 2016-08-07 19:12:03 +01:00
jzmaddock
e266a5ad51 Fix up float128 preliminary C99 support 2016-08-07 14:08:28 +01:00
jzmaddock
a9c40598a1 Merge branch 'modf' 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.
2016-08-04 13:15:27 +01:00
John Maddock
3d18f5002f Fix remaining Solaris test failures. 2016-07-26 16:57:28 +00:00
jzmaddock
9f43e1c88e Correct conversion to signed integer.
Add tests for integer round-trip.
Fixes: https://svn.boost.org/trac/boost/ticket/12343.
2016-07-22 17:54:40 +01:00
jzmaddock
acca72019e Merge branch 'develop' of https://github.com/boostorg/multiprecision into develop 2016-06-05 18:31:22 +01:00