Bug 1384233 - Update documentation for the %I format specifier in Printf.h. r=froydnj
authorKartikaya Gupta <kgupta@mozilla.com>
Wed, 26 Jul 2017 16:22:58 -0400
changeset 419847 6c5ab3bb451d7063e96ccfbc4a70f56a322324a5
parent 419846 dd104d6d9adf98ce733028dbb698b8f658a69cc8
child 419848 42801a80bc6c56509f385993bfee224edbf055d6
push id7566
push usermtabara@mozilla.com
push dateWed, 02 Aug 2017 08:25:16 +0000
treeherdermozilla-beta@86913f512c3c [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersfroydnj
bugs1384233
milestone56.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1384233 - Update documentation for the %I format specifier in Printf.h. r=froydnj MozReview-Commit-ID: 5bxCGKYrXFI
mozglue/misc/Printf.h
--- a/mozglue/misc/Printf.h
+++ b/mozglue/misc/Printf.h
@@ -32,18 +32,21 @@
 **      %u - unsigned decimal
 **      %x - unsigned hex
 **      %X - unsigned uppercase hex
 **      %o - unsigned octal
 **      %hd, %hu, %hx, %hX, %ho - "short" versions of above
 **      %ld, %lu, %lx, %lX, %lo - "long" versions of above
 **      %lld, %llu, %llx, %llX, %llo - "long long" versions of above
 **      %zd, %zo, %zu, %zx, %zX - size_t versions of above
-**      %Id, %Io, %Iu, %Ix, %IX - size_t versions of above (for Windows compat)
-**           You should use PRI*SIZE macros instead
+**      %Id, %Io, %Iu, %Ix, %IX - size_t versions of above (for Windows compat).
+**           Note that MSVC 2015 and newer supports the z length modifier so
+**           users should prefer using %z instead of %I. We are supporting %I in
+**           addition to %z in case third-party code that uses %I gets routed to
+**           use this printf implementation.
 **      %s - string
 **      %S, %ls - wide string, that is wchar_t*
 **      %c - character
 **      %p - pointer (deals with machine dependent pointer size)
 **      %f - float; note that this is actually formatted using the
 **           system's native printf, and so the results may vary
 **      %g - float; note that this is actually formatted using the
 **           system's native printf, and so the results may vary