commit b5d1df091b3c2b8943a1bdece5d48a4355489a4e (tree)
parent aa3964477f662ea5487aa4a1e4595d174e49a89d
Author: Evin Yulo <yujiri@disroot.org>
Date: Wed, 14 Dec 2022 18:43:48 -0500
Add test for #12571
Closes #12571
Diffstat:
2 files changed, 23 insertions(+), 0 deletions(-)
diff --git a/test/behavior.zig b/test/behavior.zig
@@ -100,6 +100,7 @@ test {
_ = @import("behavior/bugs/12488.zig");
_ = @import("behavior/bugs/12498.zig");
_ = @import("behavior/bugs/12551.zig");
+ _ = @import("behavior/bugs/12571.zig");
_ = @import("behavior/bugs/12644.zig");
_ = @import("behavior/bugs/12680.zig");
_ = @import("behavior/bugs/12723.zig");
diff --git a/test/behavior/bugs/12571.zig b/test/behavior/bugs/12571.zig
@@ -0,0 +1,22 @@
+const builtin = @import("builtin");
+const std = @import("std");
+const expect = std.testing.expect;
+
+const Frame = packed struct {
+ num: u20,
+};
+
+const Entry = packed struct {
+ other: u12,
+ frame: Frame,
+};
+
+test {
+ if (builtin.zig_backend == .stage2_x86_64) return error.SkipZigTest; // TODO
+ if (builtin.zig_backend == .stage2_aarch64) return error.SkipZigTest; // TODO
+
+ const frame = Frame{ .num = 0x7FDE };
+ var entry = Entry{ .other = 0, .frame = .{ .num = 0xFFFFF } };
+ entry.frame = frame;
+ try expect(entry.frame.num == 0x7FDE);
+}