aboutsummaryrefslogtreecommitdiff
path: root/test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2022-06-27 18:32:59 +0300
committerJakub Konka <kubkon@jakubkonka.com>2022-06-30 09:57:38 +0200
commit3204d00a5e7fe119b690e921138a439fb84dff5b (patch)
tree40dba7f0816a1a8cae35657aa0d6bcb0ec19b6ba /test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig
parentc248af3bdcd17c334e742d53a7ac7bda2422a688 (diff)
downloadzig-3204d00a5e7fe119b690e921138a439fb84dff5b.tar.gz
zig-3204d00a5e7fe119b690e921138a439fb84dff5b.zip
move passing stage1 compile error tests to stage2
Diffstat (limited to 'test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig')
-rw-r--r--test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig b/test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig
new file mode 100644
index 0000000000..20b373f6b7
--- /dev/null
+++ b/test/cases/compile_errors/switch_expression-missing_enumeration_prong.zig
@@ -0,0 +1,23 @@
+const Number = enum {
+ One,
+ Two,
+ Three,
+ Four,
+};
+fn f(n: Number) i32 {
+ switch (n) {
+ Number.One => 1,
+ Number.Two => 2,
+ Number.Three => @as(i32, 3),
+ }
+}
+
+export fn entry() usize { return @sizeOf(@TypeOf(&f)); }
+
+// error
+// backend=stage2
+// target=native
+//
+// :8:5: error: switch must handle all possibilities
+// :8:5: note: unhandled enumeration value: 'Four'
+// :1:16: note: enum 'tmp.Number' declared here