From: Willy Tarreau Date: Mon, 26 Nov 2018 18:35:30 +0000 (+0100) Subject: BUILD: htx: fix fprintf format inconsistency on 32-bit platforms X-Git-Tag: v1.9-dev9~142 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=6689609090aa7f9ce7b7e84b4f9625db77467ae2;p=thirdparty%2Fhaproxy.git BUILD: htx: fix fprintf format inconsistency on 32-bit platforms Building on 32 bits gives this : include/proto/htx.h: In function 'htx_dump': include/proto/htx.h:443:25: warning: format '%lu' expects argument of type 'long unsigned int', but argument 8 has type 'uint64_t {aka long long unsigned int}' [-Wformat=] fprintf(stderr, "htx:%p [ size=%u - data=%u - used=%u - wrap=%s - extra=%lu]\n", ^ In htx_dump(), fprintf() uses %lu but the value is an uint64_t so it doesn't match on 32-bit. Let's cast this to unsigned long long and use %llu instead. --- diff --git a/include/proto/htx.h b/include/proto/htx.h index 91a2086a33..dd525fed3e 100644 --- a/include/proto/htx.h +++ b/include/proto/htx.h @@ -443,7 +443,7 @@ static inline void htx_dump(struct htx *htx) fprintf(stderr, "htx:%p [ size=%u - data=%u - used=%u - wrap=%s - extra=%lu]\n", htx, htx->size, htx->data, htx->used, (!htx->used || htx->tail+1 == htx->wrap) ? "NO" : "YES", - htx->extra); + (unsigned long)htx->extra); fprintf(stderr, "\thead=%d - tail=%u - front=%u - wrap=%u\n", htx_get_head(htx), htx->tail, htx->front, htx->wrap);