diff options
| author | Andrew Kelley <andrew@ziglang.org> | 2022-04-22 11:39:12 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2022-04-22 11:39:12 -0400 |
| commit | cf20b97b713d992d84fdd8935ef935f61ed6d747 (patch) | |
| tree | fb56d5d4bcac24817751b1def53a849d4e3939d5 /test/behavior/struct.zig | |
| parent | 06310e3d4eb47fed88b175891cb5865bb050f020 (diff) | |
| parent | 19e343b8d46725265eb72796bec506050e182900 (diff) | |
| download | zig-cf20b97b713d992d84fdd8935ef935f61ed6d747.tar.gz zig-cf20b97b713d992d84fdd8935ef935f61ed6d747.zip | |
Merge pull request #11279 from igor84/s1_packed_struct
stage1: Fix packed structs (#2627, #10104)
Diffstat (limited to 'test/behavior/struct.zig')
| -rw-r--r-- | test/behavior/struct.zig | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/test/behavior/struct.zig b/test/behavior/struct.zig index aea67005f4..f2b11937b0 100644 --- a/test/behavior/struct.zig +++ b/test/behavior/struct.zig @@ -422,11 +422,21 @@ test "packed struct 24bits" { if (builtin.cpu.arch == .arm) return error.SkipZigTest; // TODO comptime { - try expect(@sizeOf(Foo24Bits) == 4); - if (@sizeOf(usize) == 4) { - try expect(@sizeOf(Foo96Bits) == 12); + // TODO Remove if and leave only the else branch when it is also fixed in stage2 + if (builtin.zig_backend == .stage2_llvm or builtin.zig_backend == .stage2_x86 or + builtin.zig_backend == .stage2_riscv64) + { + // Stage 2 still expects the wrong values + try expect(@sizeOf(Foo24Bits) == 4); + if (@sizeOf(usize) == 4) { + try expect(@sizeOf(Foo96Bits) == 12); + } else { + try expect(@sizeOf(Foo96Bits) == 16); + } } else { - try expect(@sizeOf(Foo96Bits) == 16); + // Stage1 is now fixed and is expected to return right values + try expectEqual(@sizeOf(Foo24Bits), 3); + try expectEqual(@sizeOf(Foo96Bits), 12); } } |
