Martin Koegler [off-list ref] writes:
From: Martin Koegler <redacted>
It changes the signature of the core object access function
including any other functions to assure a clean compile if
sizeof(size_t) != sizeof(unsigned long).
As https://travis-ci.org/git/git/jobs/262463159 shows, unfortunately
it turns out that things are not so simple X-<. On Linux32, size_t
is uint, which is the same size as ulong, but "%lu" is not appropriate
for showing a size_t value.
So you are correct to say in the comment under three-dashes that
there is much more to change in the codebase.