diff --git a/lib/std/zig.zig b/lib/std/zig.zig index ca72dac442f36a5d4858780e0e9d61e021a553b7..13758fc22cc2e7736a077f3eed7fe17512345689 100644 --- a/lib/std/zig.zig +++ b/lib/std/zig.zig @@ -651,10 +651,20 @@ pub fn putAstErrorsIntoBundle( path: []const u8, wip_errors: *std.zig.ErrorBundle.Wip, ) Allocator.Error!void { - var zir = try AstGen.generate(gpa, tree); - defer zir.deinit(gpa); + switch (tree.mode) { + .zig => { + var zir = try AstGen.generate(gpa, tree); + defer zir.deinit(gpa); - try wip_errors.addZirErrorMessages(zir, tree, tree.source, path); + try wip_errors.addZirErrorMessages(zir, tree, tree.source, path); + }, + .zon => { + var zoir = try ZonGen.generate(gpa, tree, .{}); + defer zoir.deinit(gpa); + + try wip_errors.addZoirErrorMessages(zoir, tree, tree.source, path); + }, + } } pub fn resolveTargetQueryOrFatal(io: Io, target_query: std.Target.Query) std.Target {