aboutsummaryrefslogtreecommitdiff
path: root/test/cases/compile_errors/invalid_deref_on_switch_target.zig
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2022-06-30 17:22:16 +0300
committerVeikka Tuominen <git@vexu.eu>2022-07-01 10:22:25 +0300
commitae7b32eb62cb00a09fe2e0e30b307eb83e9f0a86 (patch)
treeabe5edeef5d656feb5dcf82d5a8e93db67fd2afc /test/cases/compile_errors/invalid_deref_on_switch_target.zig
parent3c73f711771e41e9176e973c64484f0ce5e0eeed (diff)
downloadzig-ae7b32eb62cb00a09fe2e0e30b307eb83e9f0a86.tar.gz
zig-ae7b32eb62cb00a09fe2e0e30b307eb83e9f0a86.zip
Sema: validate deref operator type and value
Diffstat (limited to 'test/cases/compile_errors/invalid_deref_on_switch_target.zig')
-rw-r--r--test/cases/compile_errors/invalid_deref_on_switch_target.zig17
1 files changed, 17 insertions, 0 deletions
diff --git a/test/cases/compile_errors/invalid_deref_on_switch_target.zig b/test/cases/compile_errors/invalid_deref_on_switch_target.zig
new file mode 100644
index 0000000000..a880b16fca
--- /dev/null
+++ b/test/cases/compile_errors/invalid_deref_on_switch_target.zig
@@ -0,0 +1,17 @@
+comptime {
+ var tile = Tile.Empty;
+ switch (tile.*) {
+ Tile.Empty => {},
+ Tile.Filled => {},
+ }
+}
+const Tile = enum {
+ Empty,
+ Filled,
+};
+
+// error
+// backend=stage2
+// target=native
+//
+// :3:17: error: cannot dereference non-pointer type 'tmp.Tile'