commit ed6d9e2a9d6a25d511cbaa4c7ee34083223460ae (tree)
parent 2ce10e0838ea0ea6ba8a4a35e39936411a53e787
Author: kcbanner <kcbanner@gmail.com>
Date: Thu, 9 Oct 2025 19:07:46 -0400
- Output error messages for fatal translate-c errors
Diffstat:
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/src/Compilation.zig b/src/Compilation.zig
@@ -5759,8 +5759,10 @@ pub fn translateC(
if (stdout.len > 0) {
var reader: std.Io.Reader = .fixed(stdout);
const MessageHeader = std.zig.Server.Message.Header;
- const header = reader.takeStruct(MessageHeader, .little) catch unreachable;
- const body = reader.take(header.bytes_len) catch unreachable;
+ const header = reader.takeStruct(MessageHeader, .little) catch |err|
+ fatal("unable to read translate-c MessageHeader: {s}", .{@errorName(err)});
+ const body = reader.take(header.bytes_len) catch |err|
+ fatal("unable to read {}-byte translate-c message body: {s}", .{ header.bytes_len, @errorName(err) });
switch (header.tag) {
.error_bundle => {
const error_bundle = try std.zig.Server.allocErrorBundle(comp.gpa, body);
@@ -5770,7 +5772,7 @@ pub fn translateC(
.errors = error_bundle,
};
},
- else => unreachable, // No other messagse are sent
+ else => fatal("unexpected message type received from translate-c: {s}", .{@tagName(header.tag)}),
}
}