It could be an overflow, or it could have set it to that value if something unexpected happens. Ints aren’t nullable (in most languages), so returning some fixed but never occurring value is useful. The fact that it is exactly that value makes me suspect that’s the case, not overflow.
That’s the lowest a 32-bit signed integer can go, so probably an overflow error:
(2^32)÷2 = 2,147,483,648
It could be an overflow, or it could have set it to that value if something unexpected happens. Ints aren’t nullable (in most languages), so returning some fixed but never occurring value is useful. The fact that it is exactly that value makes me suspect that’s the case, not overflow.