Unitful.jl
Unitful.jl copied to clipboard
Promotion in integer array
promote([1u"kg"], [2u"g"]) # will give an error
promote([1.0u"kg"], [2.0u"g"]) # no error
Because promotion in Integer gives a Rational.
Code from Base (call stack)
promote_rule(a::Type{Array{T,n}}, b::Type{Array{S,n}}) where {T,n,S} = el_same(promote_type(T,S), a, b) # array.jl
el_same(::Type, a, b) = promote_typejoin(a, b) # range.jl
A new promote_typejoin
may have been define?