aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAndrew Kelley <andrew@ziglang.org>2025-12-17 23:23:32 -0800
committerAndrew Kelley <andrew@ziglang.org>2025-12-23 22:15:10 -0800
commit54865e0483bf02bc1ace9f06c00071fce32534cc (patch)
tree5097441c0d3e726b1bb14f003794355dd248cd1f /lib
parenta5b719e9eb0a196a43a88af8f62c897d1ecfa04f (diff)
downloadzig-54865e0483bf02bc1ace9f06c00071fce32534cc.tar.gz
zig-54865e0483bf02bc1ace9f06c00071fce32534cc.zip
compiler: fix compilation when linking libc
Diffstat (limited to 'lib')
-rw-r--r--lib/compiler/test_runner.zig2
-rw-r--r--lib/std/Io/Threaded.zig4
-rw-r--r--lib/std/testing.zig15
3 files changed, 13 insertions, 8 deletions
diff --git a/lib/compiler/test_runner.zig b/lib/compiler/test_runner.zig
index 3d97944a7f..d16fc3ae82 100644
--- a/lib/compiler/test_runner.zig
+++ b/lib/compiler/test_runner.zig
@@ -224,7 +224,7 @@ fn mainTerminal() void {
var skip_count: usize = 0;
var fail_count: usize = 0;
var fuzz_count: usize = 0;
- const root_node = if (builtin.fuzz) std.Progress.Node.none else std.Progress.start(.{
+ const root_node = if (builtin.fuzz) std.Progress.Node.none else std.Progress.start(runner_threaded_io.io(), .{
.root_name = "Test",
.estimated_total_items = test_fn_list.len,
});
diff --git a/lib/std/Io/Threaded.zig b/lib/std/Io/Threaded.zig
index ca10272b33..36118ca818 100644
--- a/lib/std/Io/Threaded.zig
+++ b/lib/std/Io/Threaded.zig
@@ -6804,7 +6804,7 @@ fn fileWritePositional(
try current_thread.beginSyscall();
while (true) {
- const rc = pwritev_sym(file.handle, &iovecs, iovlen, @bitCast(offset));
+ const rc = pwritev_sym(file.handle, &iovecs, @intCast(iovlen), @bitCast(offset));
switch (posix.errno(rc)) {
.SUCCESS => {
current_thread.endSyscall();
@@ -6923,7 +6923,7 @@ fn fileWriteStreaming(
try current_thread.beginSyscall();
while (true) {
- const rc = posix.system.writev(file.handle, &iovecs, iovlen);
+ const rc = posix.system.writev(file.handle, &iovecs, @intCast(iovlen));
switch (posix.errno(rc)) {
.SUCCESS => {
current_thread.endSyscall();
diff --git a/lib/std/testing.zig b/lib/std/testing.zig
index 98fca2f2d5..f3dd114af3 100644
--- a/lib/std/testing.zig
+++ b/lib/std/testing.zig
@@ -370,7 +370,8 @@ pub fn expectEqualSlices(comptime T: type, expected: []const T, actual: []const
if (!backend_can_print) return error.TestExpectedEqual;
if (io.lockStderr(&.{}, null)) |stderr| {
defer io.unlockStderr();
- failEqualSlices(T, expected, actual, diff_index, &stderr.interface, stderr.mode) catch {};
+ const w = &stderr.file_writer.interface;
+ failEqualSlices(T, expected, actual, diff_index, w, stderr.terminal_mode) catch {};
} else |_| {}
return error.TestExpectedEqual;
}
@@ -475,13 +476,13 @@ fn SliceDiffer(comptime T: type) type {
for (self.expected, 0..) |value, i| {
const full_index = self.start_index + i;
const diff = if (i < self.actual.len) !std.meta.eql(self.actual[i], value) else true;
- if (diff) try t.setColor(writer, .red);
+ if (diff) try t.setColor(.red);
if (@typeInfo(T) == .pointer) {
try writer.print("[{}]{*}: {any}\n", .{ full_index, value, value });
} else {
try writer.print("[{}]: {any}\n", .{ full_index, value });
}
- if (diff) try t.setColor(writer, .reset);
+ if (diff) try t.setColor(.reset);
}
}
};
@@ -538,10 +539,14 @@ const BytesDiffer = struct {
}
}
+ fn terminal(self: *const BytesDiffer, writer: *Io.Writer) Io.Terminal {
+ return .{ .writer = writer, .mode = self.terminal_mode };
+ }
+
fn writeDiff(self: BytesDiffer, writer: *Io.Writer, comptime fmt: []const u8, args: anytype, diff: bool) !void {
- if (diff) try self.file_writer_mode.setColor(writer, .red);
+ if (diff) try self.terminal(writer).setColor(.red);
try writer.print(fmt, args);
- if (diff) try self.file_writer_mode.setColor(writer, .reset);
+ if (diff) try self.terminal(writer).setColor(.reset);
}
};