From a99d465f624d9cdd82d270e03dd931c0539df8d7 Mon Sep 17 00:00:00 2001 From: yujiri8 Date: Thu, 20 Oct 2022 10:57:57 +0000 Subject: Fix #12091: Error message with TERM=dumb is missing info --- src/Compilation.zig | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) (limited to 'src/Compilation.zig') diff --git a/src/Compilation.zig b/src/Compilation.zig index 52acf1f031..fc71da56f3 100644 --- a/src/Compilation.zig +++ b/src/Compilation.zig @@ -429,25 +429,23 @@ pub const AllErrors = struct { try stderr.print(" ({d} times)\n", .{src.count}); } ttyconf.setColor(stderr, .Reset); - if (ttyconf != .no_color) { - if (src.source_line) |line| { - for (line) |b| switch (b) { - '\t' => try stderr.writeByte(' '), - else => try stderr.writeByte(b), - }; - try stderr.writeByte('\n'); - // TODO basic unicode code point monospace width - const before_caret = src.span.main - src.span.start; - // -1 since span.main includes the caret - const after_caret = src.span.end - src.span.main -| 1; - try stderr.writeByteNTimes(' ', src.column - before_caret); - ttyconf.setColor(stderr, .Green); - try stderr.writeByteNTimes('~', before_caret); - try stderr.writeByte('^'); - try stderr.writeByteNTimes('~', after_caret); - try stderr.writeByte('\n'); - ttyconf.setColor(stderr, .Reset); - } + if (src.source_line) |line| { + for (line) |b| switch (b) { + '\t' => try stderr.writeByte(' '), + else => try stderr.writeByte(b), + }; + try stderr.writeByte('\n'); + // TODO basic unicode code point monospace width + const before_caret = src.span.main - src.span.start; + // -1 since span.main includes the caret + const after_caret = src.span.end - src.span.main -| 1; + try stderr.writeByteNTimes(' ', src.column - before_caret); + ttyconf.setColor(stderr, .Green); + try stderr.writeByteNTimes('~', before_caret); + try stderr.writeByte('^'); + try stderr.writeByteNTimes('~', after_caret); + try stderr.writeByte('\n'); + ttyconf.setColor(stderr, .Reset); } for (src.notes) |note| { try note.renderToWriter(ttyconf, stderr, "note", .Cyan, indent); -- cgit v1.2.3