Our version of openlibm uses a recurrence relation to build higher order
Bessel functions from j0 and j1. For orders greater than int32_t, the
recurrence loop never runs thanks to integer overflow in the loop index.
The fix here is to simply throw a DomainError for such enormous values
of the order of the Bessel function.
- Instead of throwing DomainError for besselj(n, x) when
n>typemax(Int32), call besselj(float64(n), x) instead.
- Fixes also wraparound for n<typemin(Int32).
The behavior for n::Int is now symmetric and complements the runtime
dispatch behavior for n::FloatingPoint.