mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
SILCombine: Fix update of substitution map when substituting opened opaque archetypes
When performing the substitution of the 'concrete' type that happens to be an opened archetype we need to force the substitution to actually call the conformance remapping function. rdar://62202282 SR-12571
This commit is contained in:
@@ -122,7 +122,8 @@ ProtocolConformanceRef::subst(Type origType,
|
||||
|
||||
// Opened existentials trivially conform and do not need to go through
|
||||
// substitution map lookup.
|
||||
if (substType->isOpenedExistential())
|
||||
if (substType->isOpenedExistential() &&
|
||||
!options.contains(SubstFlags::ForceSubstituteOpenedExistentials))
|
||||
return *this;
|
||||
|
||||
auto *proto = getRequirement();
|
||||
|
||||
Reference in New Issue
Block a user