AST: Introduce SubstFlags::SubstitutePrimaryArchetypes

This commit is contained in:
Slava Pestov
2024-08-19 18:01:48 -04:00
parent 63028be348
commit da4d076f02
14 changed files with 41 additions and 14 deletions

View File

@@ -147,6 +147,7 @@ public:
if (Ty.hasLocalArchetype()) {
Ty = Ty.subst(getBuilder().getModule(),
Functor, Functor, CanGenericSignature(),
SubstFlags::SubstitutePrimaryArchetypes |
SubstFlags::SubstituteLocalArchetypes);
}
@@ -157,6 +158,7 @@ public:
CanType remapASTType(CanType Ty) {
if (Ty->hasLocalArchetype()) {
Ty = Ty.subst(Functor, Functor,
SubstFlags::SubstitutePrimaryArchetypes |
SubstFlags::SubstituteLocalArchetypes)->getCanonicalType();
}
@@ -167,6 +169,7 @@ public:
SubstitutionMap remapSubstitutionMap(SubstitutionMap Subs) {
if (Subs.getRecursiveProperties().hasLocalArchetype()) {
Subs = Subs.subst(Functor, Functor,
SubstFlags::SubstitutePrimaryArchetypes |
SubstFlags::SubstituteLocalArchetypes);
}