No, promote_type is working. I think this is intended behavior: if you construct a Dict with keys and/or values of different types, then it will default to using Any. For example:
julia> Dict(3=>4, 3.5=>4.5)
Dict{Any,Any} with 2 entries:
3 => 4
3.5 => 4.5
This was true in Julia 0.4 as well. In Julia 0.5, now that functions have
their own types, Dict(sin=>sin, cos=>cos) also produces Any.
I wonder whether the Dict constructor should use the typejoin of its
entries instead?
