zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit a67ea4a4ae6f8392e2cf9672279aa1b2f80dab72 (tree)
parent 2dcac348e57a2b071270cd3183d3e4f63af4ca7c
Author: Veikka Tuominen <git@vexu.eu>
Date:   Sun, 27 Nov 2022 21:47:41 +0200

cbe: include hash in tuple type name

Different (simple) tuple types do not necessarily print out as different strings.

This is issue would be caused by passing std.fmt.Formatter to std.fmt.format.

Diffstat:
Msrc/codegen/c.zig | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/codegen/c.zig b/src/codegen/c.zig @@ -1468,7 +1468,7 @@ pub const DeclGen = struct { if (field_id == 0) try buffer.appendSlice(" char empty_tuple;\n"); } const name_begin = buffer.items.len + "} ".len; - try buffer.writer().print("}} zig_T_{};\n", .{typeToCIdentifier(t, dg.module)}); + try buffer.writer().print("}} zig_T_{}_{d};\n", .{ typeToCIdentifier(t, dg.module), @truncate(u16, t.hash(dg.module)) }); const name_end = buffer.items.len - ";\n".len; const rendered = try buffer.toOwnedSlice();