mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
We would previously fail to match something like (C<$T1> & P) against (C<Int> & P) when the constraint kind was <= Subtype, because we would fall back to a type equality test in that case. However, this was only valid for protocol compositions without superclass constraints since the superclass could contain a type variable on one side of the constraint. Fix this by adding support for protocol composition types to matchDeepEqualityTypes().
272 KiB
272 KiB