Commit Graph

176 Commits

Author SHA1 Message Date
John Maddock
145fa2cdd4 Inching closer to getting GCC to compile the tests again...
[SVN r80153]
2012-08-23 11:24:33 +00:00
John Maddock
6157674972 Fix rational_adapter's implicit/explicit constructors.
Add converting constructors for trivial cpp_int's and test.
Both fix GCC errors.

[SVN r80120]
2012-08-21 18:17:57 +00:00
John Maddock
9d5a0bc87a Fix a few GCC warnings and errors
[SVN r80115]
2012-08-21 16:24:05 +00:00
John Maddock
d609434125 Add missing files, fix the worst of the GCC build failures.
[SVN r80114]
2012-08-21 15:47:32 +00:00
John Maddock
af9e0c2fe7 Add more explicit constructors and tests for them.
Centralise digits10 to digits2 conversions.

[SVN r80112]
2012-08-21 14:42:15 +00:00
John Maddock
1f35bfe581 Make some gmp constructors explicit.
Add tests to verify that explicit conversions fail.
Fix failures inside number.hpp.

[SVN r80083]
2012-08-19 16:39:24 +00:00
John Maddock
b892e3f5ab Big breaking change - make lossy construction explicit.
[SVN r80058]
2012-08-16 08:13:51 +00:00
John Maddock
6fe80f07de Much improved concept docs.
Regenerate docs.
Make some cpp_int specific routines generic instead.
Changed divide-by-zero to be an overflow error.

[SVN r79952]
2012-08-10 08:37:37 +00:00
John Maddock
e2ef393c23 Big search and replace rename, removing mp_ prefix.
[SVN r79932]
2012-08-08 18:14:50 +00:00
John Maddock
8807532ee4 Added explicit conversion operators.
Moved some files into /detail/

[SVN r79926]
2012-08-08 16:12:33 +00:00
John Maddock
3bcbb056e7 Add better error checking for moved-from types.
[SVN r79913]
2012-08-07 17:55:32 +00:00
John Maddock
c8c3610cdc Fix uBlas tests and failures resulting from them.
[SVN r79902]
2012-08-07 11:47:25 +00:00
John Maddock
821afe64fb Add uBlas interoperability tests.
Add file include tests.

[SVN r79894]
2012-08-07 08:10:07 +00:00
John Maddock
bb2ac1a969 Mark up some functions as being forced inline.
[SVN r79859]
2012-08-03 18:24:53 +00:00
John Maddock
2fb7c1a044 Fix Linux x64 C++0x build issues.
[SVN r79854]
2012-08-02 17:14:17 +00:00
John Maddock
8a54889f35 Update comparison operators for better efficiency.
Rework delaunay performance test to use less disk space.

[SVN r79848]
2012-08-02 12:27:00 +00:00
John Maddock
c79fb41526 Rework comparison operators - note that existing backends are made less efficient by this at present.
[SVN r79823]
2012-07-31 18:14:14 +00:00
John Maddock
5711748ee1 Fix misc bugs introduced in last commit.
[SVN r79804]
2012-07-30 17:51:47 +00:00
John Maddock
36847e4e0b Add delaunay performance test case.
Rework rvalue reference support for better performance.
Rework default operators for better performance.

[SVN r79802]
2012-07-30 15:23:51 +00:00
John Maddock
64fe0089d3 Refactor concept checks for faster compilers.
Add constexpr construction test.

[SVN r79724]
2012-07-24 18:03:54 +00:00
John Maddock
7b353cb296 Fix Linux x64 failures.
[SVN r79700]
2012-07-23 17:47:44 +00:00
John Maddock
281c667b71 Update frontend to allow direct construction of backend.
Improve construction times for cpp_int from integers.
Allow constexpr construction.
Allow fixed precision cpp_int's with small bit counts.

[SVN r79692]
2012-07-23 08:57:44 +00:00
John Maddock
08ee67ccc2 Fix some 64-bit compilation issues.
[SVN r79362]
2012-07-08 17:54:35 +00:00
John Maddock
19ee491c55 Add noexcept support/markup where possible.
[SVN r79331]
2012-07-07 11:16:28 +00:00
John Maddock
f4a922e325 Fix some asserts and comments, plus one C++11 issue.
[SVN r79250]
2012-07-03 18:18:08 +00:00
John Maddock
ccf276db86 Add tentative noexcept support.
[SVN r79243]
2012-07-03 12:32:17 +00:00
John Maddock
26905dc5ea Fix non ET operators to return by value (not rvalue refs as that's unsafe - thanks to Howard Hinnant for the test case).
Fix move constructors to actually move!
Add move test case.
Add better move support throughout the lib.

[SVN r79224]
2012-07-02 08:08:28 +00:00
John Maddock
2ea2ab8a2b Add better rvalue reference support to the non-expression template operators.
Add numeric_limits member definitions.

[SVN r79187]
2012-06-30 16:48:17 +00:00
John Maddock
1a4e3af5c8 Fix Linux x64 errors
[SVN r79165]
2012-06-29 11:53:25 +00:00
John Maddock
f09ead8e37 Some file renaming and fixes from Steven Watanabe's comments.
[SVN r79141]
2012-06-27 18:25:10 +00:00
Christopher Kormanyos
a6a4ff0c5e Improve the pow_imp function with the S-and-X binary method (Knuth, Vol 2, 4.6.3).
[SVN r79092]
2012-06-25 21:17:27 +00:00
John Maddock
ea4ff852c6 Fix valgrind spotted bug in cpp_int subtraction routine.
Add missing numeric_limits members.
Fix GCC warning in gmp.hpp.

[SVN r78953]
2012-06-15 09:10:47 +00:00
John Maddock
e0a8f821c5 Change BOOST_MP_NOEXCEPT to BOOST_NOEXCEPT.
Add some missing #includes.

[SVN r78943]
2012-06-14 10:26:15 +00:00
John Maddock
f543ec2639 Address doc concerns of Vincente Botet Escriba in pre-review comments.
Rebuild docs.

[SVN r78807]
2012-06-04 17:50:57 +00:00
John Maddock
ebd7502fdc Enhance pow and powm tests.
Quash some warnings.
Fix the IO tests on GCC.

[SVN r78423]
2012-05-11 17:19:13 +00:00
John Maddock
a8c73aea66 Change non-member functions to be protected by enable_if based on the type of the number.
Extend expression templates to 4 arguments.
Add pow and powm functions for integer types.
Update docs to match.

[SVN r78401]
2012-05-10 09:20:26 +00:00
Christopher Kormanyos
62c5ef6ca0 Switched erroneous use of old enum_fpclass to correct new fpclass_type.
[SVN r78363]
2012-05-06 20:42:55 +00:00
John Maddock
d2bc0f90f7 Change non-member functions to use enable_if so they're restricted to the number type to which they apply (better error messages). Enhance concept checks to check things which weren't previously tested.
[SVN r78321]
2012-05-04 08:20:33 +00:00
Christopher Kormanyos
0279459351 Ensure that potentially truncated digit counts in cpp_dec_float are properly used.
[SVN r78105]
2012-04-20 23:17:48 +00:00
Christopher Kormanyos
9ee0022c77 Re-factor cpp_dec_float class constants.
Extend cpp_dec_float low-digit range from 30 to 9.
Removed temporary storage from cpp_dec_float multiply routine.
Extended tests to 9, 18 and (sqrt test) to 1000 digits.

[SVN r78097]
2012-04-20 20:05:49 +00:00
John Maddock
b6d6d5ea01 Fix __int128 selection logic
[SVN r78034]
2012-04-17 09:20:47 +00:00
John Maddock
1f15fc5ad9 Deleted some dead files, moved some others around.
[SVN r78014]
2012-04-16 16:28:57 +00:00
John Maddock
538415e0ef Correct wrong function-call argument in docs.
Change max_digits10 in numeric_limits<cpp_dec_float> to include all the *possible* digits.

[SVN r77996]
2012-04-15 17:46:42 +00:00
Christopher Kormanyos
a53f4f3fee - Re-factor constants in cpp_dec_float.hpp.
- Tighten up tolerance on multiply, do trivial cleanup in cpp_dec_float.
- Change digit progression in iteration in sqrt and atan.

[SVN r77983]
2012-04-15 09:27:55 +00:00
John Maddock
462bec3925 Fix ldexp/frexp in default_ops.hpp. Improve 64-bit platform detection in cpp_int_core.hpp. Get examples building with GCC
[SVN r77971]
2012-04-14 16:51:02 +00:00
John Maddock
b424123c9d Fix GCC compile failure
[SVN r77783]
2012-04-05 17:20:50 +00:00
John Maddock
cd398028e8 Add static assert to protect multiplication algorithm from excessive limb counts.
[SVN r77775]
2012-04-05 08:22:20 +00:00
John Maddock
19113e841a Correct logic to detect when string representation has enough bits.
[SVN r77774]
2012-04-05 07:54:09 +00:00
John Maddock
d98d1ccf7d Change max_digits10 to allow some headroom for subsequent calculations.
[SVN r77759]
2012-04-04 17:10:39 +00:00
John Maddock
68a4a87438 Add string versions of constants for faster (and more accurate) constant initialization.
[SVN r77758]
2012-04-04 17:04:00 +00:00