authorgravatar for mason@gamesbymason.comMason Remaley <mason@gamesbymason.com> 2026-04-09 16:33:15-07:00
committergravatar for mason@gamesbymason.comMason Remaley <mason@gamesbymason.com> 2026-04-12 04:01:30-07:00
log492efd4c06541ca8add4147dfc2d766c1ba54693
treed9f3ba8dfe3cb17715b743b9325754fc742c7093
parentc2cbb944ba377db141e3dc5a890d955932accea2

Adds support for running stack and error trace tests through Wine

Also fixes minor bug that was preventing existing tests from passing on 32 bit Windows

2 files changed, 19 insertions(+), 5 deletions(-)

lib/std/debug/SelfInfo/Windows.zig+1-1
......@@ -368,7 +368,7 @@ const Module = struct {
368368 /// iteration, e.g. because they only wanted the topmost call.
369369 inline_sites: std.ArrayList(*align(1) const std.pdb.InlineSiteSym),
370370 },
371 dwarf: struct { addr: usize },
371 dwarf: struct { addr: u64 },
372372 none: void,
373373
374374 fn init(di: *DebugInfo, vaddr: usize) Error!Symbols {
test/tests.zig+18-4
......@@ -2016,10 +2016,24 @@ fn nativeAndCompatible32bit(b: *std.Build, skip_non_native: bool) []const std.Bu
20162016 },
20172017 else => return only_native,
20182018 };
2019 return b.graph.arena.dupe(std.Build.ResolvedTarget, &.{
2020 b.graph.host,
2021 b.resolveTargetQuery(.{ .cpu_arch = arch32, .os_tag = host.os.tag }),
2022 }) catch @panic("OOM");
2019 var targets = std.ArrayList(std.Build.ResolvedTarget).initCapacity(b.graph.arena, 2)
2020 catch @panic("OOM");
2021 targets.appendAssumeCapacity(b.graph.host);
2022 targets.appendAssumeCapacity(b.resolveTargetQuery(.{
2023 .cpu_arch = arch32,
2024 .os_tag = host.os.tag,
2025 }));
2026 if (b.enable_wine and b.graph.host.result.os.tag != .windows) {
2027 targets.append(b.graph.arena, b.resolveTargetQuery(.{
2028 .cpu_arch = host.cpu.arch,
2029 .os_tag = .windows,
2030 })) catch @panic("OOM");
2031 targets.append(b.graph.arena, b.resolveTargetQuery(.{
2032 .cpu_arch = arch32,
2033 .os_tag = .windows,
2034 })) catch @panic("OOM");
2035 }
2036 return targets.toOwnedSlice(b.graph.arena) catch @panic("OOM");
20232037}
20242038
20252039pub fn addStackTraceTests(