cbmem: map_memory: Use length modifier `j` and cast for an `off_t` argument
commit8d9ffd93b59781299bb2ed06d7f9ad30c7aac41b
authorPaul Menzel <paulepanter@users.sourceforge.net>
Sat, 13 Apr 2013 16:25:56 +0000 (13 18:25 +0200)
committerRonald G. Minnich <rminnich@gmail.com>
Tue, 16 Apr 2013 15:46:28 +0000 (16 17:46 +0200)
treeadda3eb424cef97f69abd3c57911640e73e18e0a
parent8c937c7e3cb9768c83e49a445f13e87a58d79768
cbmem: map_memory: Use length modifier `j` and cast for an `off_t`  argument

cbmem currently fails to build due to `-Werror` and the following
warning.

    $ make
    cc -O2 -Wall -Werror -iquote ../../src/include -iquote ../../src/src/arch/x86  -c -o cbmem.o cbmem.c
    cbmem.c: In function ‘map_memory’:
    cbmem.c:87:2: error: format ‘%zx’ expects argument of type ‘size_t’, but argument 2 has type ‘off_t’ [-Werror=format]
    […]

Casting the argument of type `off_t` to `intmax_t` and using the
length modifier `j`

    $ man 3 printf
    […]
           j      A following integer conversion corresponds to an intmax_t or uintmax_t argument.
    […]

instead of `z` as suggested in [1] and confirmed by stefanct and
segher in #coreboot on <irc.freenode.net>, gets rid of this warning
and should work an 32-bit and 64-bit systems, as an `off_t` fits
into `intmax_t`.

[1] http://www.pixelbeat.org/programming/gcc/int_types/

Change-Id: I1360abbc47aa1662e1edfbe337cf7911695c532f
Signed-off-by: Paul Menzel <paulepanter@users.sourceforge.net>
Reviewed-on: http://review.coreboot.org/3083
Tested-by: build bot (Jenkins)
Reviewed-by: Ronald G. Minnich <rminnich@gmail.com>
util/cbmem/cbmem.c