aboutsummaryrefslogtreecommitdiff
path: root/test/cases/compile_errors
diff options
context:
space:
mode:
Diffstat (limited to 'test/cases/compile_errors')
-rw-r--r--test/cases/compile_errors/return_from_defer_expression.zig1
-rw-r--r--test/cases/compile_errors/uncreachable_else_prong_err_set.zig25
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