Round() can anybody explain this behavior to me?

Just see (julia 1.2):

julia> round(1e24;digits=1)
9.999999999999998e23

julia> round(1e24;sigdigits=1)
1.0e24

julia> round(1e23;digits=1)
1.0e23

julia> round(1e23;sigdigits=1)
1.0000000000000001e23

julia> round(1e23;sigdigits=2)
1.0e23

Possible bug?