File tree Expand file tree Collapse file tree 2 files changed +8
-1
lines changed Expand file tree Collapse file tree 2 files changed +8
-1
lines changed Original file line number Diff line number Diff line change @@ -6442,7 +6442,8 @@ static ConstraintFix *maybeWarnAboutExtraneousCast(
6442
6442
return nullptr ;
6443
6443
6444
6444
// Both types have to be fixed.
6445
- if (fromType->hasTypeVariable () || toType->hasTypeVariable ())
6445
+ if (fromType->hasTypeVariable () || toType->hasTypeVariable () ||
6446
+ fromType->hasPlaceholder () || toType->hasPlaceholder ())
6446
6447
return nullptr ;
6447
6448
6448
6449
SmallVector<LocatorPathElt, 4 > path;
Original file line number Diff line number Diff line change @@ -529,3 +529,9 @@ let _ = derived is (SR13899_Derived) -> Void // expected-warning{{'is' test is a
529
529
let _ = derived is ( SR13899_Derived ) throws -> Void // expected-warning{{'is' test is always true}}
530
530
let _ = blockp is ( SR13899_A ) -> Void //expected-warning{{'is' test is always true}}
531
531
let _ = blockp is ( SR13899_A ) throws -> Void //expected-warning{{'is' test is always true}}
532
+
533
+ protocol PP1 { }
534
+ protocol PP2 : PP1 { }
535
+ extension Optional : PP1 where Wrapped == PP2 { }
536
+
537
+ nil is PP1 // expected-error {{'nil' requires a contextual type}}
You can’t perform that action at this time.
0 commit comments