master
 1const std = @import("std");
 2
 3pub fn panic(message: []const u8, stack_trace: ?*std.builtin.StackTrace, _: ?usize) noreturn {
 4    _ = stack_trace;
 5    if (std.mem.eql(u8, message, "switch on corrupt value")) {
 6        std.process.exit(0);
 7    }
 8    std.process.exit(1);
 9}
10const E = enum(u16) {
11    one = 1,
12    two = 2,
13    _,
14};
15const U = union(E) {
16    one: u16,
17    two: u16,
18};
19pub fn main() !void {
20    var a: U = undefined;
21    @as(*align(@alignOf(U)) u32, @ptrCast(&a)).* = 0xFFFF_FFFF;
22    switch (a) {
23        .one => @panic("one"),
24        else => @panic("else"),
25    }
26}
27// run
28// backend=selfhosted,llvm
29// target=x86_64-linux