Closed schirmeier closed 3 years ago
To be more precise regarding the logic value: (checksum == CONSTANT) yields 1 if the checksum is the expected one. However, an exit status of 0 is the convention when signaling success to the OS.
Thank you very much for your pull request! Indeed, your fix follows the conventions of the other benchmarks where the final return statement looks like return checksum != CONSTANT
.
statemate_return() finishes with
return ( checksum == 18446744073709551614ul );
; this truth value is passed on to main() and returned as the exit status to the OS. However, the correct checksum is 32 -- and if it matches the one calculated at runtime, the exit status should be 0, not 1 (the logic should be inverted here).