julia
a61d1b47 - inference: apply tmerge limit elementwise to the Union (#50927)

Commit
2 years ago
inference: apply tmerge limit elementwise to the Union (#50927) This allows forming larger unions, as long as each element in the Union is both relatively distinct and relatively simple. For example: tmerge(Base.BitSigned, Nothing) == Union{Nothing, Int128, Int16, Int32, Int64, Int8} tmerge(Tuple{Base.BitSigned, Int}, Nothing) == Union{Nothing, Tuple{Any, Int64}} tmerge(AbstractVector{Int}, Vector) == AbstractVector Disables a test from dc8d885, which does not seem possible to handle currently. This makes somewhat drastic changes to make this algorithm more commutative and simpler, since we dropped the final widening to `Any`. Co-authored-by: pchintalapudi <34727397+pchintalapudi@users.noreply.github.com> Co-authored-by: Oscar Smith <oscardssmith@gmail.com>
Author
Parents
Loading