[SILGen] Use the more efficient lookupConformance

This commit is contained in:
Michael Ilseman
2016-02-09 10:10:39 -08:00
parent 2e8f8c540a
commit 56dff87c74

View File

@@ -902,11 +902,10 @@ void SILGenFunction::checkForImportedUsedConformances(Type type) {
if (auto bridgedNSErrorProtocol =
getASTContext().getProtocol(KnownProtocolKind::BridgedNSError)) {
if (auto nominalDecl = type->getAnyNominal()) {
auto conformances = nominalDecl->getAllConformances();
for (auto conformance : conformances) {
if (conformance->getProtocol() == bridgedNSErrorProtocol) {
SGM.useConformance(ProtocolConformanceRef(conformance));
}
SmallVector<ProtocolConformance *, 4> conformances;
if (nominalDecl->lookupConformance(
SGM.SwiftModule, bridgedNSErrorProtocol, conformances)) {
SGM.useConformance(ProtocolConformanceRef(conformances.front()));
}
}
}