Mod not defined for two identical irrationals

Just to give a reason for why this happens (without commenting on if this is a bug or by design).

julia> typeof(promote(π, ℯ))
Tuple{Float64,Float64}

julia> typeof(promote(π, π))
Tuple{Irrational{:π},Irrational{:π}}

So in the first case we will call the mod function with the irrationals converted to floats, but not in the second.