C backend: fix emitting '$' in identifier names

This causes warnings from clang when compiled.
This commit is contained in:
Andrew Kelley 2021-05-11 14:51:21 -07:00
parent fb39526159
commit a74632b50a

View File

@ -61,12 +61,13 @@ fn formatIdent(
for (ident) |c, i| {
switch (c) {
'a'...'z', 'A'...'Z', '_' => try writer.writeByte(c),
'.' => try writer.writeByte('_'),
'0'...'9' => if (i == 0) {
try writer.print("${x:2}", .{c});
try writer.print("_{x:2}", .{c});
} else {
try writer.writeByte(c);
},
else => try writer.print("${x:2}", .{c}),
else => try writer.print("_{x:2}", .{c}),
}
}
}
@ -599,7 +600,6 @@ pub fn genDecl(o: *Object) !void {
}
try w.writeAll(";");
try o.indent_writer.insertNewline();
} else {
const writer = o.writer();
try writer.writeAll("static ");