Fixes missing overflow lint for i64 #14269

The `type_overflow` lint, doesn't catch the overflow for `i64` because
the overflow happens earlier in the parse phase when the `i64` gets
casted to `u64` as biggest possible int, without checking the for
overflows.
We can't lint in the parse phase, so we emit a compiler error, as we
do for overflowing `u64`