Skip to content

Commit 994a714

Browse files
committed
[CSSimplify] Relax transitive conformance check
`ModuleDecl::lookupConformance` defaults `allowMissing` to `false` which is too restrictive for the solver because we need to accept missing but synthesizable cases and filter them later via solution ranking.
1 parent 25ef748 commit 994a714

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

lib/Sema/CSSimplify.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8650,7 +8650,7 @@ ConstraintSystem::SolutionKind ConstraintSystem::simplifyTransitivelyConformsTo(
86508650

86518651
// First, let's check whether the type itself conforms,
86528652
// if it does - we are done.
8653-
if (M->lookupConformance(resolvedTy, protocol))
8653+
if (M->lookupConformance(resolvedTy, protocol, /*allowMissing=*/true))
86548654
return SolutionKind::Solved;
86558655

86568656
// If the type doesn't conform, let's check whether

0 commit comments

Comments
 (0)