MCPcopy Create free account
hub / github.com/cwida/ALP / ALP_ASSERT

Function ALP_ASSERT

benchmarks/benchmark.cpp:10–30  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8
9template <typename T>
10void ALP_ASSERT(T original_val, T decoded_val, size_t idx) {
11 if (original_val == 0.0 && std::signbit(original_val)) {
12 if (!(decoded_val == 0.0 && std::signbit(decoded_val))) {
13 std::cerr << "Assertion failed: decoded_val is not -0.0 as expected.\n";
14 std::cerr << idx << " | original_val: " << original_val << ", decoded_val: " << decoded_val << "\n";
15 std::terminate(); // Immediately stop the program
16 }
17 } else if (std::isnan(original_val)) {
18 if (!std::isnan(decoded_val)) {
19 std::cerr << "Assertion failed: decoded_val is not NaN as expected.\n";
20 std::cerr << idx << " | original_val: " << original_val << ", decoded_val: " << decoded_val << "\n";
21 std::terminate();
22 }
23 } else {
24 if (original_val != decoded_val) {
25 std::cerr << "Assertion failed: original_val != decoded_val.\n";
26 std::cerr << idx << "| original_val: " << original_val << ", decoded_val: " << decoded_val << "\n";
27 std::terminate();
28 }
29 }
30}
31
32void write_result_header(std::ofstream& ofile) {
33 //

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected