You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Looks like it, as inferring fluffs eventually leads to inferring _isequal(Tuple{Any, Vararg{Any, N}}, Tuple{Any, Vararg{Any, N}}) where {N} for argument types (Tuple{Int64, Int64, Int64}, Tuple{Any, Any, Any, Any}) which don't actually match the signature. That in turn is caused by
julia>typeintersect(Tuple{Tuple{Any, Vararg{Any, N}}, Tuple{Any, Vararg{Any, N}}} where N, Tuple{Tuple{Int,Int,Int}, Tuple})
Tuple{Tuple{Int64, Int64, Int64}, NTuple{4, Any}}
On 1.6.3
whereas on 1.7-RC1 and master
Notice that the
isequal
call has::Core.Const(false)
in the latter, which seems to be incorrect.Interestingly, that still holds after dropping the
::Bool
from the method signature, butNote that using the new definition for Base.isequal from 1.7-RC1/master on 1.6.3 yields the same issue:
The new definition seems ok though, which suggests to me that the issue is in inference on 1.6.3, 1.7-RC1, and master. Best! :)
The text was updated successfully, but these errors were encountered: