diff options
Diffstat (limited to 'src/codegen.zig')
| -rw-r--r-- | src/codegen.zig | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/codegen.zig b/src/codegen.zig index eea8095a62..4f400fa7fc 100644 --- a/src/codegen.zig +++ b/src/codegen.zig @@ -442,7 +442,10 @@ pub fn generateSymbol( .Int => { const info = typed_value.ty.intInfo(target); if (info.bits <= 8) { - const x = @intCast(u8, typed_value.val.toUnsignedInt(target)); + const x: u8 = switch (info.signedness) { + .unsigned => @intCast(u8, typed_value.val.toUnsignedInt(target)), + .signed => @bitCast(u8, @intCast(i8, typed_value.val.toSignedInt())), + }; try code.append(x); return Result{ .appended = {} }; } |
