commit 2beb21c4e4a59190c998e07596e323d5ace68a21 (tree) parent 960932a4bf4f470e7a3f32b2d56035fc4b530ba8 Author: Andrew Kelley <andrew@ziglang.org> Date: Wed, 23 Jun 2021 10:06:52 -0700 stage2: fix crash when using stage1 backend Calling processOutdatedAndDeletedDecls() should not happen when using the stage1 backend. Problem solved with checking a simple flag. Diffstat:
| M | src/Compilation.zig | | | 10 | +++++++--- |
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/src/Compilation.zig b/src/Compilation.zig @@ -1952,9 +1952,13 @@ pub fn performAllTheWork(self: *Compilation) error{ TimerUnsupported, OutOfMemor } } - // Iterate over all the files and look for outdated and deleted declarations. - if (self.bin_file.options.module) |mod| { - try mod.processOutdatedAndDeletedDecls(); + const use_stage1 = build_options.omit_stage2 or + (build_options.is_stage1 and self.bin_file.options.use_llvm); + if (!use_stage1) { + // Iterate over all the files and look for outdated and deleted declarations. + if (self.bin_file.options.module) |mod| { + try mod.processOutdatedAndDeletedDecls(); + } } while (self.work_queue.readItem()) |work_item| switch (work_item) {