authorgravatar for shawn@git.icuShawn Landden <shawn@git.icu> 2019-11-04 17:41:45-08:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2019-11-05 11:38:32-05:00
log1c22cb5e515548b22ccb260f4451edc119151584
tree719a20198cfb2963afb5799008c0557fddf3e2b0
parent55685ae7801a222ddaaf46660dd0acfa34ed71f4

fix noreturn function that may return.

we do not want undefined behavior here in --release-fast and --release-small modes

1 files changed, 4 insertions(+), 2 deletions(-)

lib/std/special/c.zig+4-2
...@@ -82,9 +82,11 @@ pub fn panic(msg: []const u8, error_return_trace: ?*builtin.StackTrace) noreturn...@@ -82,9 +82,11 @@ pub fn panic(msg: []const u8, error_return_trace: ?*builtin.StackTrace) noreturn
82 if (builtin.is_test) {82 if (builtin.is_test) {
83 @setCold(true);83 @setCold(true);
84 std.debug.panic("{}", msg);84 std.debug.panic("{}", msg);
85 } else {
86 unreachable;
87 }85 }
86 if (builtin.os != .freestanding) {
87 std.os.abort();
88 }
89 while (true) {}
88}90}
8991
90export fn memset(dest: ?[*]u8, c: u8, n: usize) ?[*]u8 {92export fn memset(dest: ?[*]u8, c: u8, n: usize) ?[*]u8 {