From fbbe2f207a26b410d485c9dea07a22256a02d50b Mon Sep 17 00:00:00 2001 From: Flavian Kaufmann Date: Tue, 20 May 2025 14:18:30 +0200 Subject: local variables --- src/ast.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/ast.c') diff --git a/src/ast.c b/src/ast.c index 5460c87..83a55c6 100644 --- a/src/ast.c +++ b/src/ast.c @@ -88,6 +88,15 @@ ASTNode *ast_rop(ROp rop, ASTNode *aexp1, ASTNode *aexp2) { return node; } +ASTNode *ast_let(ASTNode *var, ASTNode *aexp, ASTNode *stm) { + ASTNode *node = new_node(NT_LET); + node->u.d_let.var = var; + node->u.d_let.aexp = aexp; + node->u.d_let.stm = stm; + return node; +} + + void ast_free(ASTNode *node) { if (!node) return; switch (node->type) { -- cgit v1.2.3