From 79e00de77709e1a8a9a12939c59606e38b27e52f Mon Sep 17 00:00:00 2001 From: nsfisis Date: Sat, 3 May 2025 17:57:08 +0900 Subject: fix code generation failure if "if" stmt has no "else" clause --- main.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'main.c') diff --git a/main.c b/main.c index 7670a08..7298d56 100644 --- a/main.c +++ b/main.c @@ -841,7 +841,9 @@ void gen_if_stmt(CODEGEN* g, AST* ast) { gen_stmt(g, ast->node1); printf(" jmp .Lend%d\n", label); printf(".Lelse%d:\n", label); - gen_stmt(g, ast->node2); + if (ast->node2) { + gen_stmt(g, ast->node2); + } printf(".Lend%d:\n", label); } -- cgit v1.2.3-70-g09d2