Commit Graph

136 Commits

Author SHA1 Message Date
Robert Ramey
2bf3699082 corrected errors in comparison
implemented compile time checking to eliminate redundant run time error checking
first cut with automatic promotion
2015-07-07 14:51:33 -07:00
Robert Ramey
5ccff22568 first test of automatic promotion policy 2015-07-05 14:10:00 -07:00
Robert Ramey
d33389c450 converted test_conversion to
test_construction
test_assignment

pending - make m_t private
eliminate redundant bounds checking
2015-06-28 21:24:04 -07:00
Robert Ramey
97d2b6cf12 made transition from derived classes to usage of type alias
pending cast from safe type to primitive integer type
2015-06-27 09:58:53 -07:00
Robert Ramey
2a5c0e373c test0 not working
example6 not working
2015-06-25 08:44:38 -07:00
Robert Ramey
d7ae9eb09e fixed modulus and test_modulus 2015-06-24 09:08:40 -07:00
Robert Ramey
2ebf9538d1 broke multiply and conversion 2015-06-23 15:16:04 -07:00
Robert Ramey
69d681727c re-factored compare
updated test_compare
updated safe_compare.hp
2015-06-19 08:29:53 -07:00
Robert Ramey
ba0040d512 Added in modulus operation and verified with tests.
This is a minor variation on divide
2015-06-17 09:31:29 -07:00
Robert Ramey
9ba1617c4e Implemented divide operations
updated test_add
2015-06-15 16:18:30 -07:00
Robert Ramey
6c0365461b Implemented multiply
test_multiply passes
2015-06-15 10:23:13 -07:00
Robert Ramey
5eebc2f1a8 working tests add and subtract with policies 2015-06-08 13:15:37 -07:00
Robert Ramey
7299770bdf miscellaaneous code clean up
added policies documentation
2015-06-02 22:42:39 -07:00
Robert Ramey
ff4b3dca72 eliminated unused headers test_add.hpp, test_subtract.hp, etc.
The code in these haaders has been moved into test_add.cpp, test_subtract.cpp, etc.
2015-05-29 14:48:07 -07:00
Robert Ramey
471f1b85ec got test_checked to work.
This verifies error detection for instrinsic integers at both compile and run time
2015-05-29 13:06:45 -07:00
Robert Ramey
599debeace passing all addition tests 2015-03-06 22:08:46 -08:00
Robert Ramey
273d32e4df works for subtract and add 2015-02-22 14:48:30 -08:00
Robert Ramey
fcb107840b addition operator returns safe type - passes all current addition tests.
implemented policy design
implemented addition part of native policy
2015-02-16 21:06:40 -08:00
Robert Ramey
94eb08f587 changed test.cpp to test0.cpp to accommodated CMake quirk 2015-02-08 16:27:51 -08:00
Robert Ramey
0356bb1a3d improved native policy 2015-02-08 16:26:41 -08:00
Robert Ramey
561efa82a8 latest version - problem with circular reference to limits.hpp 2014-08-31 15:06:36 -07:00
Robert Ramey
d5c921a55b managed to get native.hpp to compile - but still have problems production a safe result 2014-07-11 14:46:31 -07:00
Robert Ramey
24af3a8a7e compiles test.cpp w/o errors
implements safe_tag to distinguish "safe" types
2014-07-06 09:40:11 -07:00
Robert Ramey
831231d9de intermediate version - first look at policies 2014-07-04 08:49:57 -07:00
Robert Ramey
c2c093379d adjustments to make test_conversion pass
All tests pass in Debug and Release!!!
2014-04-20 18:10:15 -07:00
Robert Ramey
2bfc6d4381 fix subtraction
passes all tests
2014-04-20 15:24:08 -07:00
Robert Ramey
742f536338 improve local operations - no tests for these yet 2014-04-16 11:07:30 -07:00
Robert Ramey
a420669fcb test_modulus
improvements to logical/shift operations
2014-04-15 23:01:42 -07:00
Robert Ramey
ee09a4371b test divide passes 2014-04-15 16:25:20 -07:00
Robert Ramey
da574497e5 working
test add
test cast
test compare
test conversion
test subtract
test multiply
2014-04-14 14:41:48 -07:00
Robert Ramey
257f806f0b working:
test_multiply
test_cast
2014-04-13 20:18:27 -07:00
Robert Ramey
cef6bcd465 intermediat changes
almost have safe multiplication working.  Fails 4 test cases.  BUT these cases require more than trivial changes so I'm checking in this intermediate version
2014-04-11 11:27:20 -07:00
Robert Ramey
09d3149412 Got all tests for subtraction to pass. 2014-04-08 08:22:22 -07:00
Robert Ramey
12f5843f90 Fixed problems in testing addition operations
More carefully defined the concepts.  That is the concept of the library is now clear:

Trap at either compile or runtime integer operations which yield a result which differs from the normal arithmetic result.

Pending on this check in:
a) only addition is fixed up so far
b) uses BOOST_TYPEOF... rather than decltype(... - final decision sill pending.
c) comments out some compile time checks which should be re-instated.
d) fixed tests so that they actually work!
2014-04-05 12:22:25 -07:00
Robert Ramey
050f6748b9 minor adjustments in tests from Clang testing 2014-02-11 14:37:31 -08:00
Robert Ramey
b9845327d1 eliminated redundant root directory 2013-11-04 11:44:56 -08:00