Commit 6bd92a21b7

mlugg <mlugg@mlugg.co.uk>
2025-02-06 00:07:43
behavior: add test for old bug
Resolves: #2289
1 parent b21becb
Changed files (1)
test
behavior
test/behavior/union.zig
@@ -2322,3 +2322,19 @@ test "assign global tagged union" {
     try expect(U.global == .b);
     try expect(U.global.b == 123456);
 }
+
+test "set mutable union by switching on same union" {
+    const U = union(enum) {
+        foo,
+        bar: usize,
+    };
+
+    var val: U = .foo;
+    val = switch (val) {
+        .foo => .{ .bar = 2 },
+        .bar => .foo,
+    };
+
+    try expect(val == .bar);
+    try expect(val.bar == 2);
+}