I found a couple of places where a pgoff_t value, typically a signed
64-bit integer, is cast to a type with a smaller range. I noticed this
specifically in error messages, so it's mostly cosmetic. Also, files
with a size where this would matter are not expected in many places, but
I suspect that the case in basebackup_server.c in the attached patch can
actually happen.
The fix is to use the %lld print format and a cast to long long int,
which is the style already in most places.
In passing, I also converted a few places that used %llu to print
pgoff_t to also use %lld instead. This is mostly for consistency, but
it also feels more robust in case a negative value ever sneaks in.