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
Same issues with type params (can be checked by replacing {x: Type} with Array<Type> in the example) because both use unify_with_variance.
Fist fail happens because unify_with_variance stops going deeper the moment it encounters an abstract and uses equality check for comparison of direct casts after that and as Array<Array<Int>> and Array<MyArray<Int>> are not equal, the unification fails.
Second fail is a mystery for me right now.
Third one happens because underlying type is not resolved deeper - Foo<String> is not equal to String.
The text was updated successfully, but these errors were encountered:
Example:
Same issues with type params (can be checked by replacing
{x: Type}
withArray<Type>
in the example) because both useunify_with_variance
.Fist fail happens because
unify_with_variance
stops going deeper the moment it encounters an abstract and uses equality check for comparison of direct casts after that and asArray<Array<Int>>
andArray<MyArray<Int>>
are not equal, the unification fails.Second fail is a mystery for me right now.
Third one happens because underlying type is not resolved deeper -
Foo<String>
is not equal toString
.The text was updated successfully, but these errors were encountered: