diff options
| author | Baitinq <[email protected]> | 2025-05-15 12:07:23 +0200 |
|---|---|---|
| committer | Baitinq <[email protected]> | 2025-05-15 12:07:23 +0200 |
| commit | a3a219dd0eb5b198dd6111a7a49ad12a24a4dcca (patch) | |
| tree | 0b7da154d16c1c58a728f4418629b8acca30d499 | |
| parent | Misc: Cleanup flake.nix (diff) | |
| download | pry-lang-a3a219dd0eb5b198dd6111a7a49ad12a24a4dcca.tar.gz pry-lang-a3a219dd0eb5b198dd6111a7a49ad12a24a4dcca.tar.bz2 pry-lang-a3a219dd0eb5b198dd6111a7a49ad12a24a4dcca.zip | |
Codegen: Fix bug with nested ifs
| -rw-r--r-- | src/codegen.zig | 4 |
1 files changed, 2 insertions, 2 deletions
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); |