The following seems inconsistent:
julia> convert(Int,-1+0im)
-1
julia> round(Int,-1+0im)
ERROR: MethodError: `round` has no method matching round(::Type{Int64}, ::Complex{Int64})
Closest candidates are:
round{T<:Integer}(::Type{T<:Integer}, ::Integer)
round{T<:Integer}(::Type{T<:Integer}, ::Float16)
round{T<:Union{Signed,Unsigned}}(::Type{T<:Union{Signed,Unsigned}}, ::BigFloat)
...