From f20929bd8b6cd2b0af5edade9c27a5e002480d65 Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Thu, 17 Feb 2022 13:12:31 -0700 Subject: [PATCH] stage2: fix crash using -femit-bin --- src/Compilation.zig | 2 ++ src/Module.zig | 6 +++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/Compilation.zig b/src/Compilation.zig index 0e1714ba38..e776b43508 100644 --- a/src/Compilation.zig +++ b/src/Compilation.zig @@ -2771,6 +2771,8 @@ fn processOneJob(comp: *Compilation, job: Job, main_progress_node: *std.Progress sema_frame.end(); sema_frame_ended = true; + if (comp.bin_file.options.emit == null) return; + const liveness_frame = tracy.namedFrame("liveness"); var liveness_frame_ended = false; errdefer if (!liveness_frame_ended) liveness_frame.end(); diff --git a/src/Module.zig b/src/Module.zig index 4ffd6925b6..e973c42a7d 100644 --- a/src/Module.zig +++ b/src/Module.zig @@ -5266,7 +5266,11 @@ pub fn populateTestFunctions(mod: *Module) !void { } pub fn linkerUpdateDecl(mod: *Module, decl: *Decl) !void { - mod.comp.bin_file.updateDecl(mod, decl) catch |err| switch (err) { + const comp = mod.comp; + + if (comp.bin_file.options.emit == null) return; + + comp.bin_file.updateDecl(mod, decl) catch |err| switch (err) { error.OutOfMemory => return error.OutOfMemory, error.AnalysisFail => { decl.analysis = .codegen_failure;