Robert Ramey
71eedbdf6f
Merge branch 'develop' of https://github.com/boostorg/safe_numerics into develop
2018-10-16 09:41:30 -07:00
Robert Ramey
1edc47eeff
earlier versions of the clang compiler (e.g. 3.8) have been failing.
...
It looks like this might be due the the unary - operator in checked_result operations isn't being "found".
I've modified the code so that this operator is defined before it is used.
Maybe this will make a difference.
2018-10-16 09:16:15 -07:00
Peter Dimov
aabc7ef9b9
Merge branch 'feature/fix-travis' into develop
2018-10-16 19:07:17 +03:00
Peter Dimov
6da3c981f2
Remove clang 3.8 as well
2018-10-16 18:35:28 +03:00
Peter Dimov
bcf5e5f275
Remove clang 3.5/3.6; use libstdc++-5 for 3.8
2018-10-16 07:38:39 +03:00
Robert Ramey
fc38d49245
fix extraneous semi-colons
...
fix test_trap in Jamfile - should fail compile only
2018-10-15 19:59:04 -07:00
Peter Dimov
f24570bb01
Fix clang 3.5-3.8 'default initialization of an object of const type without a user-provided default constructor'
2018-10-16 03:38:36 +03:00
Peter Dimov
6e08da96f2
Remove g++ 5 from Travis; install newer libstdc++ versions for the Clangs
2018-10-15 22:14:38 +03:00
Robert Ramey
87d441f99c
adjust to accomodated issue for Clang versions precious to clang7
2018-10-05 08:56:13 -07:00
Robert Ramey
1bdf30e2b2
clean up exception catching to suppress warnings.
...
sync up class and struct
2018-09-30 17:39:33 -07:00
Robert Ramey
b75ea6243f
correct error so that we match lazy enable if interface.
2018-09-29 17:25:55 -07:00
Robert Ramey
3f7414b180
add missing files for boost test matrix
2018-09-24 19:50:11 -07:00
Robert Ramey
1ab8b710f4
renamed travis.yml to .travis.yml to enable travis CI
2018-09-24 14:40:30 -07:00
Robert Ramey
605feb4596
updated CI scripts according to latest suggestions
2018-09-24 11:53:37 -07:00
Robert Ramey
b9b394fe43
tribool has been updated so as not to implicitly convert tribool to bool
2018-09-23 14:26:36 -07:00
Robert Ramey
992bd7b311
Changes generated by preparation for CPPCon 2018
2018-09-15 10:48:41 -07:00
Robert Ramey
e26fb7fcee
generated html and pdf documentation
2018-09-05 09:56:32 -07:00
Robert Ramey
52e0a2fe03
correction to exception expected
...
add example8 for difference between two unsigned ints
update documentation - pending issues
2018-09-04 13:37:21 -07:00
Robert Ramey
37457049a3
upgrades in documentation
2018-09-02 11:05:08 -07:00
Robert Ramey
0e25e2095b
alter directory structure to comply with boost requirements
2018-08-16 11:03:38 -07:00
Robert Ramey
4ed363972e
moved include files to boost approved location
2018-08-14 21:27:37 -07:00
Robert Ramey
e68037cb32
Update documentation to address PRs
...
update appveyor/travis xml hoping they'll work
2018-08-14 16:46:19 -07:00
Robert Ramey
4e63548736
Refine embedded case study after running code on MPLab simulator
2018-08-10 13:07:38 -07:00
Robert Ramey
00f51146ef
fixing up apveyor yml
...
Now it should use whichever version of msvc is specified by the "build" section.
2018-08-02 08:38:36 -07:00
Robert Ramey
ffe8c9eaa2
add missing html files for case study
...
fix issue with CMakeLists.txt
2018-08-02 08:05:23 -07:00
Robert Ramey
5f2cdf26c5
backed out change which generates complaint about missing VS 2017
2018-07-22 09:03:01 -07:00
Robert Ramey
13015d9c62
Appveyor still failing, return to previous script
2018-07-22 08:45:52 -07:00
Robert Ramey
1537d022d0
ad image and mp11
2018-07-21 15:56:44 -07:00
Robert Ramey
88519fbcdc
forgot to include new files motor_test1.c, motor_test2.c, motor_test3.c
2018-07-21 09:59:33 -07:00
Robert Ramey
b62ef86e28
Added case study for embedded system
...
corrections in cpp promotion
added make_safe_literal
separated integers from other types
dropped example91
updated CMakeLists.txt and Jamfile.v2 accordingly
2018-07-21 09:57:35 -07:00
Robert Ramey
861d209b2e
changed to msvc-14.1 to see if appveyor likes it.
2018-05-20 17:15:46 -07:00
Robert Ramey
a7e43e7a59
missing imported library for integer.hpp
2018-05-19 20:54:41 -07:00
Robert Ramey
024e250b3e
Attempt to make appveyor run tests on safe numerics
2018-05-19 17:36:57 -07:00
Robert Ramey
53bd56c597
improved support for constexpr
...
improved support for safe_literals
corrected errors in less_than and equal which were failing to detect possible runtime failures.
simplified pseudo partial specialization for checked_result_operations
2018-05-19 15:59:28 -07:00
Robert Ramey
d8e3a5e0a8
build documentation
2018-04-24 21:48:33 -07:00
Robert Ramey
ff130138ca
update Jamfile to address CI problem
2018-04-24 14:33:17 -07:00
Robert Ramey
0d443e3a6f
alterations to accomodate VS 2017
...
currently passes all tests and examples on Clang, gcc and mdvc with C++14
2018-04-23 10:22:34 -07:00
Robert Ramey
b534437b76
correct issues in example93 and misc gcc issues.
...
correct Jamfile to skip performance test in debug mode
implement compile only test in CMakeLists.txt
2018-04-07 15:30:02 -07:00
Robert Ramey
d053997cfd
Made alterations to accommodate GCC compilers. Now passes all tests on both Clang and GCC
2018-04-06 09:02:21 -07:00
Robert Ramey
325de8e171
corrected bugs detected after rebasing to devlop
2018-03-26 12:16:25 -07:00
Robert Ramey
99ee93d94d
refactored checked operations, added corresponding tests and documentation
...
meant to improve correctness and extendability.
2018-03-24 18:22:48 -07:00
Robert Ramey
0ff8bb9ceb
Passing all tests.
...
checked integer arithmetic type working.
2018-03-22 10:12:39 -07:00
Robert Ramey
1490e9fe57
refactored to implement checked_result arithmetic - still some tests to fix
2018-03-13 15:04:16 -07:00
Robert Ramey
924ec15070
updated documentation to reflect newer implementation
2017-11-07 14:42:54 -08:00
Robert Ramey
67a7eaa2ad
Make checked<...> an arithmetic type
...
adjust rest of program accordingly
this should
a) factor casts out of checked operations and put them in safe_base_operations
b) simplify interval which will not explicitly check for overflows etc.
First milestone - make test_add_native pass all addition tests.
2017-11-07 09:57:09 -08:00
Robert Ramey
4153b7f58a
Numerous changes to better handle floating point.
...
Turns out that these changes should also better position us to handle other underlying types - but we're not there yet.
Added example for composition with other types - example boost rational and boost multi precision
Added performance test using boost multi precision
Many other small corrections
2017-07-16 13:36:09 -07:00
Robert Ramey
86910466a8
Intermediate working version
...
Making way for checked_float, checked_money, etc
a) factoring checked into checked_integer etc.
b) moved some tests from test_z to official tests
c) added test_rational which tests interoperability with boost::rational
d) moved safe_range to safe_integer_range
2017-07-08 12:48:37 -07:00
Robert Ramey
67bc38ac62
added example based on rational.hpp
...
used enable_if on checked functions to pave the way for other checked implementations
2017-06-27 22:56:11 -07:00
Robert Ramey
6854782928
reversed decision to make casting explicit. It's implicit again. Making it explicit didn't solve any issues but caused a number of examples to fail requiring an explanation. Now It's back to the way it was.
2017-06-25 21:19:58 -07:00
Robert Ramey
26372d4862
hardened up enable_if usage to diminish or eliminate un expected instantiations
2017-06-25 18:33:25 -07:00