authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-05-25 15:00:56-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2026-05-25 18:54:37-07:00
log198f35c98c8a8216a120f146605bb729e7b8dd66
tree9e52a7c65295f1c150a36c2514e2cc753a6be19d
parent19c63406d4acded72966a66ac369ccceb69173a2

Maker: restore commit: clear step inputs when resetting the step

I'm a bit confused because my understanding is that each step is supposed to make its own decision about whether to clear its watch inputs and start over, or retain them from the previous update. However, without this fix in place, the problem from #35224 manifests itself again. Since this fix is in place in master branch, I'll leave it for now and audit the file watching logic later.

1 files changed, 1 insertions(+), 2 deletions(-)

lib/compiler/Maker/Step.zig+1-2
...@@ -312,8 +312,7 @@ pub fn reset(step: *Step, maker: *Maker) void {...@@ -312,8 +312,7 @@ pub fn reset(step: *Step, maker: *Maker) void {
312 step.result_duration_ns = null;312 step.result_duration_ns = null;
313 step.result_peak_rss = 0;313 step.result_peak_rss = 0;
314 step.test_results = .{};314 step.test_results = .{};
315 // We do not clearWatchInputs here because each step manages that choice315 clearWatchInputs(step, maker);
316 // independently.
317316
318 step.result_error_bundle.deinit(gpa);317 step.result_error_bundle.deinit(gpa);
319 step.result_error_bundle = std.zig.ErrorBundle.empty;318 step.result_error_bundle = std.zig.ErrorBundle.empty;