Thread (4 messages) flat view 4 messages, 3 authors, 2018-03-27

Re: [RFC PATCH 1/1] json-writer: incorrect format specifier

From: Junio C Hamano <hidden>
Date: 2018-03-26 17:05:06

Ramsay Jones [off-list ref] writes:
quoted
quoted
@@ -120,7 +120,7 @@ void jw_object_uint64(struct json_writer *jw, const char *key, uint64_t value)
 	maybe_add_comma(jw);
 
 	append_quoted_string(&jw->json, key);
-	strbuf_addf(&jw->json, ":%"PRIuMAX, value);
+	strbuf_addf(&jw->json, ":%"PRIu64, value);
In this code-base, that would normally be written as:

	strbuf_addf(&jw->json, ":%"PRIuMAX, (uintmax_t) value);
heh, I should learn not to reply in a hurry, just before
going out ...

I had not noticed that 'value' was declared with an 'sized type'
of uint64_t, so using PRIu64 should be fine.
But why is this codepath using a sized type in the first place?  It
is not like it wants to read/write a fixed binary file format---it
just wants to use an integer type that is wide enough to handle any
inttype the platform uses, for which uintmax_t would be a more
appropriate type, no?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help