| 840 | }; |
| 841 | |
| 842 | void DivVerifyUint64Int64_2() |
| 843 | { |
| 844 | size_t i; |
| 845 | |
| 846 | for( i = 0; i < sizeof(int64_uint64_2)/sizeof(int64_uint64_2[0]); ++i ) |
| 847 | { |
| 848 | // Now test throwing version |
| 849 | bool fSuccess = true; |
| 850 | try |
| 851 | { |
| 852 | SafeInt<__int64> si(int64_uint64_2[i].x); |
| 853 | SafeInt<__int64> si2; |
| 854 | |
| 855 | si2 = int64_uint64_2[i].y / si; |
| 856 | } |
| 857 | catch(...) |
| 858 | { |
| 859 | fSuccess = false; |
| 860 | } |
| 861 | |
| 862 | if( fSuccess != int64_uint64_2[i].fExpected ) |
| 863 | { |
| 864 | printf("Error in case int64_uint64_2 throw: %I64X, %I64X, expected = %s\n", int64_uint64_2[i].x, int64_uint64_2[i].y, int64_uint64_2[i].fExpected ? "true" : "false"); |
| 865 | } |
| 866 | } |
| 867 | } |
| 868 | |
| 869 | DivTest< unsigned __int64, __int32 > uint64_int32[] = |
| 870 | { |