From 60c0e084b159801a45570b56f152f0f5e9193d72 Mon Sep 17 00:00:00 2001 From: hachem Date: Tue, 8 Sep 2026 12:16:51 +0200 Subject: feat: add while loops --- src/sema.c | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'src/sema.c') diff --git a/src/sema.c b/src/sema.c index 12f2689..274bd53 100644 --- a/src/sema.c +++ b/src/sema.c @@ -470,6 +470,12 @@ static void check_statement(struct RefCheck* check, struct Statement* statement) for (size_t i = 0; i < statement->branch.else_count; i += 1) check_statement(check, &statement->branch.else_body[i]); break; + case STATEMENT_WHILE: + check_expr(check, statement->loop.left); + check_expr(check, statement->loop.right); + for (size_t i = 0; i < statement->loop.body_count; i += 1) + check_statement(check, &statement->loop.body[i]); + break; case STATEMENT_CALL: { struct CallStatement* call = &statement->call; -- cgit v1.3