diff options
Diffstat (limited to 'test/cases/safety/@errorCast error union casted to disjoint set.zig')
-rw-r--r-- | test/cases/safety/@errorCast error union casted to disjoint set.zig | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/test/cases/safety/@errorCast error union casted to disjoint set.zig b/test/cases/safety/@errorCast error union casted to disjoint set.zig index bdb2d80760..6f9de8cf5f 100644 --- a/test/cases/safety/@errorCast error union casted to disjoint set.zig +++ b/test/cases/safety/@errorCast error union casted to disjoint set.zig @@ -1,8 +1,18 @@ const std = @import("std"); -pub fn panic(cause: std.builtin.PanicCause, stack_trace: ?*std.builtin.StackTrace, _: ?usize) noreturn { +pub const Panic = struct { + pub const call = panic; + pub const unwrapError = std.debug.FormattedPanic.unwrapError; + pub const outOfBounds = std.debug.FormattedPanic.outOfBounds; + pub const startGreaterThanEnd = std.debug.FormattedPanic.startGreaterThanEnd; + pub const sentinelMismatch = std.debug.FormattedPanic.sentinelMismatch; + pub const inactiveUnionField = std.debug.FormattedPanic.inactiveUnionField; + pub const messages = std.debug.FormattedPanic.messages; +}; + +fn panic(message: []const u8, stack_trace: ?*std.builtin.StackTrace, _: ?usize) noreturn { _ = stack_trace; - if (cause == .invalid_error_code) { + if (std.mem.eql(u8, message, "invalid error code")) { std.process.exit(0); } std.process.exit(1); |