Currently we only defined rem2pi(x::Int32, r::RoundingMode), rem2pi(x::Int64, r::RoundingMode).
A general fallback seems make sense.
function rem2pi(x::Integer, r::RoundingMode)
fx = float(x)
fx == x || throw(ArgumentError("$(typeof(x)) argument to rem2pi is too large: $x"))
rem2pi(fx, r)
end