[Sema] Remove separate closure type-checking logic

`participatesInInference` is now always true for
a non-empty body, remove it along with the separate
type-checking logic such that empty bodies are
type-checked together with the context.
This commit is contained in:
Hamish Knight
2024-09-08 16:17:11 +01:00
parent 72fe29f7f4
commit ee0e408a8c
13 changed files with 27 additions and 118 deletions

View File

@@ -7432,16 +7432,6 @@ bool ConstraintSystem::isArgumentGenericFunction(Type argType, Expr *argExpr) {
return false;
}
bool ConstraintSystem::participatesInInference(ClosureExpr *closure) const {
if (getAppliedResultBuilderTransform(closure))
return true;
if (closure->hasEmptyBody())
return false;
return true;
}
ProtocolConformanceRef
ConstraintSystem::lookupConformance(Type type, ProtocolDecl *protocol) {
auto cacheKey = std::make_pair(type.getPointer(), protocol);