Respect resilience when specializing opaque type archetypes

This commit is contained in:
Arnold Schwaighofer
2019-04-24 10:03:57 -07:00
parent 881d9ad2bf
commit a793dfb451
11 changed files with 188 additions and 37 deletions

View File

@@ -111,8 +111,9 @@ public:
/// Replace opaque types in the conforming type with their underlying types,
/// and resolve opaque conformances to their underlying conformances.
ProtocolConformanceRef substOpaqueTypesWithUnderlyingTypes(Type origType) const;
ProtocolConformanceRef substOpaqueTypesWithUnderlyingTypes(
Type origType, ModuleDecl *modulePerformingSubstitution) const;
/// Given a dependent type (expressed in terms of this conformance's
/// protocol), follow it from the conforming type.
Type getAssociatedType(Type origType, Type dependentType,