| ... | @@ -739,6 +739,7 @@ pub fn default_panic(msg: []const u8, error_return_trace: ?*StackTrace, ret_addr | ... | @@ -739,6 +739,7 @@ pub fn default_panic(msg: []const u8, error_return_trace: ?*StackTrace, ret_addr |
| 739 | builtin.zig_backend == .stage2_arm or | 739 | builtin.zig_backend == .stage2_arm or |
| 740 | builtin.zig_backend == .stage2_aarch64 or | 740 | builtin.zig_backend == .stage2_aarch64 or |
| 741 | builtin.zig_backend == .stage2_x86 or | 741 | builtin.zig_backend == .stage2_x86 or |
| | 742 | (builtin.zig_backend == .stage2_x86_64 and builtin.target.ofmt != .elf) or |
| 742 | builtin.zig_backend == .stage2_riscv64 or | 743 | builtin.zig_backend == .stage2_riscv64 or |
| 743 | builtin.zig_backend == .stage2_sparc64 or | 744 | builtin.zig_backend == .stage2_sparc64 or |
| 744 | builtin.zig_backend == .stage2_spirv64) | 745 | builtin.zig_backend == .stage2_spirv64) |
| ... | @@ -807,6 +808,13 @@ pub fn default_panic(msg: []const u8, error_return_trace: ?*StackTrace, ret_addr | ... | @@ -807,6 +808,13 @@ pub fn default_panic(msg: []const u8, error_return_trace: ?*StackTrace, ret_addr |
| 807 | std.os.abort(); | 808 | std.os.abort(); |
| 808 | }, | 809 | }, |
| 809 | .cuda, .amdhsa => std.os.abort(), | 810 | .cuda, .amdhsa => std.os.abort(), |
| | 811 | .plan9 => { |
| | 812 | var status: [std.os.plan9.ERRMAX]u8 = undefined; |
| | 813 | const len = @min(msg.len, status.len - 1); |
| | 814 | @memcpy(status[0..len], msg[0..len]); |
| | 815 | status[len] = 0; |
| | 816 | std.os.plan9.exits(status[0..len :0]); |
| | 817 | }, |
| 810 | else => { | 818 | else => { |
| 811 | const first_trace_addr = ret_addr orelse @returnAddress(); | 819 | const first_trace_addr = ret_addr orelse @returnAddress(); |
| 812 | std.debug.panicImpl(error_return_trace, first_trace_addr, msg); | 820 | std.debug.panicImpl(error_return_trace, first_trace_addr, msg); |