authorgravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2022-12-24 02:39:56-05:00
committergravatar for jacobly@ziglang.orgJacob Young <jacobly@ziglang.org> 2022-12-24 02:40:33-05:00
logbc913295b52ae0368c1a0fb33678ec6ac3408c9b
treea2be4582a3d9f0446f929cff1759e5b590b6f31d
parent6cd80042133c28d37bb30eba49d022a4fb23c058

CBE: fix emitting a partially undefined string literal


1 files changed, 4 insertions(+), 1 deletions(-)

src/codegen/c.zig+4-1
...@@ -1066,7 +1066,10 @@ pub const DeclGen = struct {...@@ -1066,7 +1066,10 @@ pub const DeclGen = struct {
1066 var index: usize = 0;1066 var index: usize = 0;
1067 while (index < ai.len) : (index += 1) {1067 while (index < ai.len) : (index += 1) {
1068 const elem_val = try val.elemValue(dg.module, arena_allocator, index);1068 const elem_val = try val.elemValue(dg.module, arena_allocator, index);
1069 const elem_val_u8 = @intCast(u8, elem_val.toUnsignedInt(target));1069 const elem_val_u8 = if (elem_val.isUndef())
1070 undefPattern(u8)
1071 else
1072 @intCast(u8, elem_val.toUnsignedInt(target));
1070 try writeStringLiteralChar(writer, elem_val_u8);1073 try writeStringLiteralChar(writer, elem_val_u8);
1071 }1074 }
1072 if (ai.sentinel) |s| {1075 if (ai.sentinel) |s| {