authorgravatar for kcbanner@gmail.comCasey Banner <kcbanner@gmail.com> 2025-10-09 19:07:46-04:00
committergravatar for kcbanner@gmail.comCasey Banner <kcbanner@gmail.com> 2025-10-09 19:08:16-04:00
loged6d9e2a9d6a25d511cbaa4c7ee34083223460ae
treee04d9c3379b5752b73491e862b0b4bc86e32c42e
parent2ce10e0838ea0ea6ba8a4a35e39936411a53e787

- Output error messages for fatal translate-c errors


1 files changed, 5 insertions(+), 3 deletions(-)

src/Compilation.zig+5-3
...@@ -5759,8 +5759,10 @@ pub fn translateC(...@@ -5759,8 +5759,10 @@ pub fn translateC(
5759 if (stdout.len > 0) {5759 if (stdout.len > 0) {
5760 var reader: std.Io.Reader = .fixed(stdout);5760 var reader: std.Io.Reader = .fixed(stdout);
5761 const MessageHeader = std.zig.Server.Message.Header;5761 const MessageHeader = std.zig.Server.Message.Header;
5762 const header = reader.takeStruct(MessageHeader, .little) catch unreachable;5762 const header = reader.takeStruct(MessageHeader, .little) catch |err|
5763 const body = reader.take(header.bytes_len) catch unreachable;5763 fatal("unable to read translate-c MessageHeader: {s}", .{@errorName(err)});
5764 const body = reader.take(header.bytes_len) catch |err|
5765 fatal("unable to read {}-byte translate-c message body: {s}", .{ header.bytes_len, @errorName(err) });
5764 switch (header.tag) {5766 switch (header.tag) {
5765 .error_bundle => {5767 .error_bundle => {
5766 const error_bundle = try std.zig.Server.allocErrorBundle(comp.gpa, body);5768 const error_bundle = try std.zig.Server.allocErrorBundle(comp.gpa, body);
...@@ -5770,7 +5772,7 @@ pub fn translateC(...@@ -5770,7 +5772,7 @@ pub fn translateC(
5770 .errors = error_bundle,5772 .errors = error_bundle,
5771 };5773 };
5772 },5774 },
5773 else => unreachable, // No other messagse are sent5775 else => fatal("unexpected message type received from translate-c: {s}", .{@tagName(header.tag)}),
5774 }5776 }
5775 }5777 }
57765778