Non-atomic signed Signed integer overflow is undefined behavior (see undefined behavior 33 in Annex J.2 of C99). This means that implementations have a great deal of latitude in how they deal with signed integer overflow.
...
Non-atomic signed Signed integer overflow is undefined behavior (see undefined behavior 33 in Annex J.2 of C99). This means that implementations have a great deal of latitude in how they deal with signed integer overflow.
...