If, for some inputs, the program is supposed to calculate the value 42, but it throws an integer overflow, then it is not correct.
Detecting overflows and throwing nice exceptions instead of continuing execution with garbage values isn't the same thing as ensuring correctness.