diff --git a/lib/AST/ProtocolConformance.cpp b/lib/AST/ProtocolConformance.cpp index 07a922f6bed93..840d21f501b0f 100644 --- a/lib/AST/ProtocolConformance.cpp +++ b/lib/AST/ProtocolConformance.cpp @@ -153,7 +153,9 @@ ProtocolConformanceRef::subst(Type origType, return ProtocolConformanceRef(lookupResults.front()); } - llvm_unreachable("Invalid conformance substitution"); + // FIXME: Rip this out once ConformanceAccessPaths are plumbed through + auto *M = proto->getParentModule(); + return *M->lookupConformance(substType, proto, nullptr); } Type