commit 592f1043dc704faf79bde7149917d4155b3747f8 (tree)
parent a0d16829215f56fe42548f1014cba0f2df5a1609
Author: Jacob Young <jacobly0@users.noreply.github.com>
Date: Sat, 19 Jul 2025 13:54:31 -0400
cbe: fix comptime-known packed unions
Diffstat:
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/codegen/c.zig b/src/codegen/c.zig
@@ -2438,7 +2438,10 @@ pub const DeclGen = struct {
const ty = val.typeOf(zcu);
return .{ .data = .{
.dg = dg,
- .int_info = ty.intInfo(zcu),
+ .int_info = if (ty.zigTypeTag(zcu) == .@"union" and ty.containerLayout(zcu) == .@"packed")
+ .{ .signedness = .unsigned, .bits = @intCast(ty.bitSize(zcu)) }
+ else
+ ty.intInfo(zcu),
.kind = kind,
.ctype = try dg.ctypeFromType(ty, kind),
.val = val,