File tree Expand file tree Collapse file tree 1 file changed +10
-0
lines changed Expand file tree Collapse file tree 1 file changed +10
-0
lines changed Original file line number Diff line number Diff line change @@ -2583,6 +2583,16 @@ bool ConstraintSystem::repairFailures(
2583
2583
if (hasConversionOrRestriction (ConversionRestrictionKind::DeepEquality))
2584
2584
break ;
2585
2585
2586
+ // If there implicit 'something-to-pointer' conversions involved,
2587
+ // such conversions are going to be diagnosed by specialized fix
2588
+ // which deals with generic argument mismatches.
2589
+ if (hasConversionOrRestriction (ConversionRestrictionKind::ArrayToPointer) ||
2590
+ hasConversionOrRestriction (ConversionRestrictionKind::InoutToPointer) ||
2591
+ hasConversionOrRestriction (
2592
+ ConversionRestrictionKind::PointerToPointer) ||
2593
+ matchKind == ConstraintKind::BindToPointerType)
2594
+ break ;
2595
+
2586
2596
// If this is a ~= operator implicitly generated by pattern matching
2587
2597
// let's not try to fix right-hand side of the operator because it's
2588
2598
// a correct contextual type.
You can’t perform that action at this time.
0 commit comments