Dwarf: implement new incremental line number update API

This commit is contained in:
Jacob Young
2025-01-04 00:32:28 -05:00
committed by mlugg
parent 065e10c95c
commit dde3116e50
10 changed files with 851 additions and 466 deletions

View File

@@ -0,0 +1,32 @@
#target=x86_64-linux-selfhosted
#update=initial version
#file=main.zig
const std = @import("std");
fn Printer(message: []const u8) type {
return struct {
fn print() !void {
try std.io.getStdOut().writeAll(message);
}
};
}
pub fn main() !void {
try Printer("foo\n").print();
try Printer("bar\n").print();
}
#expect_stdout="foo\nbar\n"
#update=change line number
#file=main.zig
const std = @import("std");
fn Printer(message: []const u8) type {
return struct {
fn print() !void {
try std.io.getStdOut().writeAll(message);
}
};
}
pub fn main() !void {
try Printer("foo\n").print();
try Printer("bar\n").print();
}
#expect_stdout="foo\nbar\n"

View File

@@ -0,0 +1,16 @@
#target=x86_64-linux-selfhosted
#update=initial version
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.io.getStdOut().writeAll("foo\n");
}
#expect_stdout="foo\n"
#update=change line number
#file=main.zig
const std = @import("std");
pub fn main() !void {
try std.io.getStdOut().writeAll("foo\n");
}
#expect_stdout="foo\n"