Merge pull request #39966 from aschwaighofer/feature_specialize_with_availability

Define a feature for _specialize with availability
This commit is contained in:
Arnold Schwaighofer
2021-11-08 12:13:33 -08:00
committed by GitHub
9 changed files with 59 additions and 9 deletions

View File

@@ -2611,14 +2611,14 @@ class Serializer::DeclSerializer : public DeclVisitor<DeclSerializer> {
auto numSPIGroups = attr->getSPIGroups().size();
assert(pieces.size() == numArgs + numSPIGroups ||
pieces.size() == (numArgs - 1 + numSPIGroups));
auto numAvailabilityAttrs = attr->getAvailabeAttrs().size();
auto numAvailabilityAttrs = attr->getAvailableAttrs().size();
SpecializeDeclAttrLayout::emitRecord(
S.Out, S.ScratchRecord, abbrCode, (unsigned)attr->isExported(),
(unsigned)attr->getSpecializationKind(),
S.addGenericSignatureRef(attr->getSpecializedSignature()),
S.addDeclRef(targetFunDecl), numArgs, numSPIGroups,
numAvailabilityAttrs, pieces);
for (auto availAttr : attr->getAvailabeAttrs()) {
for (auto availAttr : attr->getAvailableAttrs()) {
writeDeclAttribute(D, availAttr);
}
return;