Skip to content

Commit 4f15b47

Browse files
committed
Concurrency: Contextualize top-level code before checking actor isolation
1 parent f3e1d87 commit 4f15b47

File tree

2 files changed

+2
-5
lines changed

2 files changed

+2
-5
lines changed

lib/Sema/TypeCheckStmt.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2994,12 +2994,10 @@ bool TypeChecker::typeCheckTapBody(TapExpr *expr, DeclContext *DC) {
29942994
}
29952995

29962996
void TypeChecker::typeCheckTopLevelCodeDecl(TopLevelCodeDecl *TLCD) {
2997-
// We intentionally use typeCheckStmt instead of typeCheckBody here
2998-
// because we want to contextualize all the TopLevelCode
2999-
// declarations simultaneously.
30002997
BraceStmt *Body = TLCD->getBody();
3001-
StmtChecker(TLCD).typeCheckStmt(Body);
2998+
StmtChecker(TLCD).typeCheckBody(Body);
30022999
TLCD->setBody(Body);
3000+
30033001
checkTopLevelActorIsolation(TLCD);
30043002
checkTopLevelEffects(TLCD);
30053003
performTopLevelDeclDiagnostics(TLCD);

lib/Sema/TypeChecker.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -284,7 +284,6 @@ TypeCheckSourceFileRequest::evaluate(Evaluator &eval, SourceFile *SF) const {
284284
for (auto D : SF->getTopLevelDecls()) {
285285
if (auto *TLCD = dyn_cast<TopLevelCodeDecl>(D)) {
286286
TypeChecker::typeCheckTopLevelCodeDecl(TLCD);
287-
TypeChecker::contextualizeTopLevelCode(TLCD);
288287
} else {
289288
TypeChecker::typeCheckDecl(D);
290289
}

0 commit comments

Comments
 (0)