| author | |
| committer | |
| log | d01641f6be1e9f330be87e45a14bfda60387306b |
| tree | da405d8036df2b70147064ab97148ad21f4b3915 |
| parent | 2cc9c99ebf559853f99dbca052c34ecaa71fb8ba |
2 files changed, 18 insertions(+), 18 deletions(-)
test/cases/tail_call_noreturn.zig created+18| ... | @@ -0,0 +1,18 @@ | ||
| 1 | const std = @import("std"); | ||
| 2 | const builtin = std.builtin; | ||
| 3 | pub fn foo(message: []const u8, stack_trace: ?*builtin.StackTrace) noreturn { | ||
| 4 | @call(.always_tail, bar, .{ message, stack_trace }); | ||
| 5 | } | ||
| 6 | pub fn bar(message: []const u8, stack_trace: ?*builtin.StackTrace) noreturn { | ||
| 7 | _ = message; | ||
| 8 | _ = stack_trace; | ||
| 9 | std.process.exit(0); | ||
| 10 | } | ||
| 11 | |||
| 12 | pub fn main() void { | ||
| 13 | foo("foo", null); | ||
| 14 | } | ||
| 15 | |||
| 16 | // run | ||
| 17 | // backend=llvm | ||
| 18 | // target=x86_64-linux,x86_64-macos,aarch64-linux,aarch64-macos | ||
test/cases/taill_call_noreturn.zig deleted-18| ... | @@ -1,18 +0,0 @@ | ||
| 1 | const std = @import("std"); | ||
| 2 | const builtin = std.builtin; | ||
| 3 | pub fn foo(message: []const u8, stack_trace: ?*builtin.StackTrace) noreturn { | ||
| 4 | @call(.always_tail, bar, .{ message, stack_trace }); | ||
| 5 | } | ||
| 6 | pub fn bar(message: []const u8, stack_trace: ?*builtin.StackTrace) noreturn { | ||
| 7 | _ = message; | ||
| 8 | _ = stack_trace; | ||
| 9 | std.process.exit(0); | ||
| 10 | } | ||
| 11 | |||
| 12 | pub fn main() void { | ||
| 13 | foo("foo", null); | ||
| 14 | } | ||
| 15 | |||
| 16 | // run | ||
| 17 | // backend=llvm | ||
| 18 | // target=x86_64-linux,x86_64-macos,aarch64-linux,aarch64-macos | ||