aboutsummaryrefslogtreecommitdiff
path: root/src/codegen
diff options
context:
space:
mode:
authorVeikka Tuominen <git@vexu.eu>2022-11-27 21:47:41 +0200
committerVeikka Tuominen <git@vexu.eu>2022-11-30 15:14:33 +0200
commita67ea4a4ae6f8392e2cf9672279aa1b2f80dab72 (patch)
tree35a6be2ee2c946ab6854a06624e241f444144fd6 /src/codegen
parent2dcac348e57a2b071270cd3183d3e4f63af4ca7c (diff)
downloadzig-a67ea4a4ae6f8392e2cf9672279aa1b2f80dab72.tar.gz
zig-a67ea4a4ae6f8392e2cf9672279aa1b2f80dab72.zip
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 (limited to 'src/codegen')
-rw-r--r--src/codegen/c.zig2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/codegen/c.zig b/src/codegen/c.zig
index 7db7f56de6..6e96e92529 100644
--- 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();