build: in ZiglingStep.check_output panic in case of OOM

This is necessary since, when trimLines returns `std.mem.Allocator.Error`,
no error message will be displayed to the user.

An alternative is to use `std.Build.Step.fail`, but using @panic("OOM")
is simpler and consistent with existing code.
This commit is contained in:
Manlio Perillo 2023-05-20 07:21:11 +02:00
parent d0de9e5348
commit 3e38a4fc84

View file

@ -304,7 +304,7 @@ const ZiglingStep = struct {
// Validate the output. // Validate the output.
// NOTE: exercise.output can never contain a CR character. // NOTE: exercise.output can never contain a CR character.
// See https://ziglang.org/documentation/master/#Source-Encoding. // See https://ziglang.org/documentation/master/#Source-Encoding.
const output = try trimLines(b.allocator, raw_output); const output = trimLines(b.allocator, raw_output) catch @panic("OOM");
const exercise_output = self.exercise.output; const exercise_output = self.exercise.output;
if (!std.mem.eql(u8, output, self.exercise.output)) { if (!std.mem.eql(u8, output, self.exercise.output)) {
return self.step.fail( return self.step.fail(