Skip to content

Commit 5ea3f0b

Browse files
committed
[Distributed] Another fix for getting required protocols for SR
1 parent 332e20f commit 5ea3f0b

File tree

1 file changed

+2
-9
lines changed

1 file changed

+2
-9
lines changed

lib/AST/DistributedDecl.cpp

Lines changed: 2 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -119,15 +119,8 @@ Type swift::getSerializationRequirementTypesForMember(
119119
}
120120

121121
// Also store all `SerializationRequirement : SomeProtocol` requirements
122-
for (auto requirement: signature.getRequirements()) {
123-
if (requirement.getFirstType()->isEqual(SerReqAssocType) &&
124-
requirement.getKind() == RequirementKind::Conformance) {
125-
if (auto nominal = requirement.getSecondType()->getAnyNominal()) {
126-
if (auto protocol = dyn_cast<ProtocolDecl>(nominal)) {
127-
serializationRequirements.insert(protocol);
128-
}
129-
}
130-
}
122+
for (auto proto: signature->getRequiredProtocols(SerReqAssocType)) {
123+
serializationRequirements.insert(proto);
131124
}
132125

133126
// Note that this may be null, e.g. if we're a distributed func inside

0 commit comments

Comments
 (0)