| ... | @@ -5852,6 +5852,19 @@ fn zirDbgStmt(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!voi | ... | @@ -5852,6 +5852,19 @@ fn zirDbgStmt(sema: *Sema, block: *Block, inst: Zir.Inst.Index) CompileError!voi |
| 5852 | if (block.is_comptime or sema.mod.comp.bin_file.options.strip) return; | 5852 | if (block.is_comptime or sema.mod.comp.bin_file.options.strip) return; |
| 5853 | | 5853 | |
| 5854 | const inst_data = sema.code.instructions.items(.data)[inst].dbg_stmt; | 5854 | const inst_data = sema.code.instructions.items(.data)[inst].dbg_stmt; |
| | 5855 | |
| | 5856 | if (block.instructions.items.len != 0) { |
| | 5857 | const idx = block.instructions.items[block.instructions.items.len - 1]; |
| | 5858 | if (sema.air_instructions.items(.tag)[idx] == .dbg_stmt) { |
| | 5859 | // The previous dbg_stmt didn't correspond to any actual code, so replace it. |
| | 5860 | sema.air_instructions.items(.data)[idx].dbg_stmt = .{ |
| | 5861 | .line = inst_data.line, |
| | 5862 | .column = inst_data.column, |
| | 5863 | }; |
| | 5864 | return; |
| | 5865 | } |
| | 5866 | } |
| | 5867 | |
| 5855 | _ = try block.addInst(.{ | 5868 | _ = try block.addInst(.{ |
| 5856 | .tag = .dbg_stmt, | 5869 | .tag = .dbg_stmt, |
| 5857 | .data = .{ .dbg_stmt = .{ | 5870 | .data = .{ .dbg_stmt = .{ |