From a3a219dd0eb5b198dd6111a7a49ad12a24a4dcca Mon Sep 17 00:00:00 2001 From: Baitinq Date: Thu, 15 May 2025 12:07:23 +0200 Subject: Codegen: Fix bug with nested ifs --- src/codegen.zig | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'src/codegen.zig') diff --git a/src/codegen.zig b/src/codegen.zig index 6b8e310..5733d5f 100644 --- a/src/codegen.zig +++ b/src/codegen.zig @@ -275,8 +275,8 @@ pub const CodeGen = struct { try self.generate_statement(stmt); } const merge_block = llvm.LLVMAppendBasicBlock(llvm.LLVMGetLastFunction(self.llvm_module), "merge_block"); - const last_instr = llvm.LLVMGetLastInstruction(then_block); - if (llvm.LLVMIsATerminatorInst(last_instr) == null) { + const last_instr = llvm.LLVMGetLastInstruction(llvm.LLVMGetInsertBlock(self.builder)); + if (last_instr == null or llvm.LLVMIsATerminatorInst(last_instr) == null) { _ = llvm.LLVMBuildBr(self.builder, merge_block); } llvm.LLVMPositionBuilderAtEnd(self.builder, current_block); -- cgit 1.4.1