[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

@@ -130,7 +130,7 @@ public:
auto *ACE = TheFunction.get<AbstractClosureExpr *>();
if (auto *CE = dyn_cast<ClosureExpr>(ACE)) {
CE->setBody(stmt);
CE->setBodyState(ClosureExpr::BodyState::ReadyForTypeChecking);
CE->setBodyState(ClosureExpr::BodyState::Parsed);
return;
}
@@ -146,7 +146,7 @@ public:
auto *ACE = TheFunction.get<AbstractClosureExpr *>();
if (auto *CE = dyn_cast<ClosureExpr>(ACE)) {
CE->setBody(stmt);
CE->setBodyState(ClosureExpr::BodyState::TypeCheckedWithSignature);
CE->setBodyState(ClosureExpr::BodyState::TypeChecked);
return;
}