aboutsummaryrefslogtreecommitdiff
path: root/src/Module.zig
diff options
context:
space:
mode:
Diffstat (limited to 'src/Module.zig')
-rw-r--r--src/Module.zig9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/Module.zig b/src/Module.zig
index d37452d99d..2e421ea65b 100644
--- a/src/Module.zig
+++ b/src/Module.zig
@@ -2466,6 +2466,7 @@ pub fn astGenFile(mod: *Module, file: *Scope.File) !void {
defer msg.deinit();
const token_starts = file.tree.tokens.items(.start);
+ const token_tags = file.tree.tokens.items(.tag);
try file.tree.renderError(parse_err, msg.writer());
const err_msg = try gpa.create(ErrorMsg);
@@ -2477,6 +2478,14 @@ pub fn astGenFile(mod: *Module, file: *Scope.File) !void {
},
.msg = msg.toOwnedSlice(),
};
+ if (token_tags[parse_err.token] == .invalid) {
+ const bad_off = @intCast(u32, file.tree.tokenSlice(parse_err.token).len);
+ try mod.errNoteNonLazy(.{
+ .file_scope = file,
+ .parent_decl_node = 0,
+ .lazy = .{ .byte_abs = token_starts[parse_err.token] + bad_off },
+ }, err_msg, "invalid byte here", .{});
+ }
{
const lock = comp.mutex.acquire();