aboutsummaryrefslogtreecommitdiff
path: root/test/behavior
diff options
context:
space:
mode:
Diffstat (limited to 'test/behavior')
-rw-r--r--test/behavior/enum.zig7
-rw-r--r--test/behavior/union.zig2
2 files changed, 8 insertions, 1 deletions
diff --git a/test/behavior/enum.zig b/test/behavior/enum.zig
index 517414780b..28c8785e64 100644
--- a/test/behavior/enum.zig
+++ b/test/behavior/enum.zig
@@ -1175,3 +1175,10 @@ test "Non-exhaustive enum with nonstandard int size behaves correctly" {
const E = enum(u15) { _ };
try expect(@sizeOf(E) == @sizeOf(u15));
}
+
+test "Non-exhaustive enum backed by comptime_int" {
+ const E = enum(comptime_int) { a, b, c, _ };
+ comptime var e: E = .a;
+ e = @intToEnum(E, 378089457309184723749);
+ try expect(@enumToInt(e) == 378089457309184723749);
+}
diff --git a/test/behavior/union.zig b/test/behavior/union.zig
index 9053a860a6..b94034adf4 100644
--- a/test/behavior/union.zig
+++ b/test/behavior/union.zig
@@ -690,7 +690,7 @@ test "union with only 1 field casted to its enum type which has enum value speci
var e = Expr{ .Literal = Literal{ .Bool = true } };
comptime try expect(Tag(ExprTag) == comptime_int);
- var t = @as(ExprTag, e);
+ comptime var t = @as(ExprTag, e);
try expect(t == Expr.Literal);
try expect(@enumToInt(t) == 33);
comptime try expect(@enumToInt(t) == 33);