diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-09-12 16:11:18 -0700 |
|---|---|---|
| committer | Andrew Kelley <andrew@ziglang.org> | 2022-09-12 16:11:18 -0700 |
| commit | 011663eea590dddff79b73c72bfeda5dd7f947cc (patch) | |
| tree | c51299eb6d22d3762674540de062d7e4723c9a92 /test/cases | |
| parent | 01e89fec71c781113f4be6f65af8e1702c8dde7c (diff) | |
| parent | e323cf1264f390911dcc2efea71d46be1d631d92 (diff) | |
| download | zig-011663eea590dddff79b73c72bfeda5dd7f947cc.tar.gz zig-011663eea590dddff79b73c72bfeda5dd7f947cc.zip | |
Merge remote-tracking branch 'origin/master' into llvm15
Diffstat (limited to 'test/cases')
| -rw-r--r-- | test/cases/compile_errors/return_from_defer_expression.zig | 1 | ||||
| -rw-r--r-- | test/cases/compile_errors/uncreachable_else_prong_err_set.zig | 25 | ||||
| -rw-r--r-- | test/cases/returns_in_try.zig | 2 |
3 files changed, 28 insertions, 0 deletions
diff --git a/test/cases/compile_errors/return_from_defer_expression.zig b/test/cases/compile_errors/return_from_defer_expression.zig index e60b8ae848..12aa08a11c 100644 --- a/test/cases/compile_errors/return_from_defer_expression.zig +++ b/test/cases/compile_errors/return_from_defer_expression.zig @@ -19,3 +19,4 @@ export fn entry() usize { return @sizeOf(@TypeOf(testTrickyDefer)); } // target=native // // :4:11: error: 'try' not allowed inside defer expression +// :4:5: note: defer expression here diff --git a/test/cases/compile_errors/uncreachable_else_prong_err_set.zig b/test/cases/compile_errors/uncreachable_else_prong_err_set.zig new file mode 100644 index 0000000000..4b0ae462d6 --- /dev/null +++ b/test/cases/compile_errors/uncreachable_else_prong_err_set.zig @@ -0,0 +1,25 @@ +pub export fn complex() void { + var a: error{ Foo, Bar } = error.Foo; + switch (a) { + error.Foo => unreachable, + error.Bar => unreachable, + else => { + @compileError("<something complex here>"); + }, + } +} + +pub export fn simple() void { + var a: error{ Foo, Bar } = error.Foo; + switch (a) { + error.Foo => unreachable, + error.Bar => unreachable, + else => |e| return e, + } +} + +// error +// backend=llvm +// target=native +// +// :6:14: error: unreachable else prong; all cases already handled diff --git a/test/cases/returns_in_try.zig b/test/cases/returns_in_try.zig index de5a9a3258..e283b93db2 100644 --- a/test/cases/returns_in_try.zig +++ b/test/cases/returns_in_try.zig @@ -13,4 +13,6 @@ pub fn b() !void { // error // // :7:11: error: 'try' not allowed inside defer expression +// :7:5: note: defer expression here // :10:11: error: cannot return from defer expression +// :10:5: note: defer expression here |
