This is right(!) in some technical (modular) sense. Modular arithmetic is the default for machine integers, and they can’t be Inf. So Int^Int, CAN’T result in Inf, if, given that it results in Int. I would argue it should result in Float64, similar to division, for the same reasons (at least for signed integers), when the power is (possibly) negative. Right now, power returns Int for purity reasons, that arguably do not apply to it, only the other operators.
I’m not sure a lot of code relies on integer exponentiation, but it it does then plan b could be to check for overflow and throw an error, and I’m not sure it will be slow or prevent optimization. Because I think there’s no such assembly instruction.