diff options
Diffstat (limited to 'test/cases/compile_errors')
| -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 |
2 files changed, 26 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 |
