mirror of
https://github.com/ziglang/zig.git
synced 2026-02-13 21:08:36 +00:00
std.fmt.comptimePrint: Properly null-terminate result and add test
This commit is contained in:
parent
49e68bdcf3
commit
e9bca9de3c
@ -1184,10 +1184,13 @@ fn bufPrintIntToSlice(buf: []u8, value: anytype, base: u8, uppercase: bool, opti
|
||||
pub fn comptimePrint(comptime fmt: []const u8, args: anytype) *const [count(fmt, args):0]u8 {
|
||||
comptime var buf: [count(fmt, args):0]u8 = undefined;
|
||||
_ = bufPrint(&buf, fmt, args) catch unreachable;
|
||||
buf[buf.len] = 0;
|
||||
return &buf;
|
||||
}
|
||||
|
||||
test "comptimePrint" {
|
||||
@setEvalBranchQuota(2000);
|
||||
std.testing.expectEqual(*const [3:0]u8, @TypeOf(comptime comptimePrint("{}", .{100})));
|
||||
std.testing.expectEqualSlices(u8, "100", comptime comptimePrint("{}", .{100}));
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user