Merge branch 'main' into allowable-serialization

This commit is contained in:
Xi Ge
2022-11-28 12:36:52 -08:00
committed by GitHub
27 changed files with 715 additions and 463 deletions

View File

@@ -1509,11 +1509,13 @@ void Serializer::writeASTBlockEntity(const GenericEnvironment *genericEnv) {
auto existentialTypeID = addTypeRef(genericEnv->getOpenedExistentialType());
auto parentSig = genericEnv->getOpenedExistentialParentSignature();
auto parentSigID = addGenericSignatureRef(parentSig);
auto emptySubs = SubstitutionMap();
auto subsID = addSubstitutionMapRef(emptySubs);
auto genericEnvAbbrCode = DeclTypeAbbrCodes[GenericEnvironmentLayout::Code];
GenericEnvironmentLayout::emitRecord(Out, ScratchRecord, genericEnvAbbrCode,
unsigned(kind), existentialTypeID,
parentSigID);
parentSigID, subsID);
return;
}
@@ -1521,11 +1523,13 @@ void Serializer::writeASTBlockEntity(const GenericEnvironment *genericEnv) {
auto kind = GenericEnvironmentKind::OpenedElement;
auto parentSig = genericEnv->getGenericSignature();
auto parentSigID = addGenericSignatureRef(parentSig);
auto contextSubs = genericEnv->getPackElementContextSubstitutions();
auto subsID = addSubstitutionMapRef(contextSubs);
auto genericEnvAbbrCode = DeclTypeAbbrCodes[GenericEnvironmentLayout::Code];
GenericEnvironmentLayout::emitRecord(Out, ScratchRecord, genericEnvAbbrCode,
unsigned(kind), /*existentialTypeID=*/0,
parentSigID);
parentSigID, subsID);
return;
}