svn commit: r222084 - head/contrib/gperf/src
Dimitry Andric
dim at FreeBSD.org
Wed May 18 21:31:37 UTC 2011
On 2011-05-18 23:16, Pawel Jakub Dawidek wrote:
> On Wed, May 18, 2011 at 09:06:20PM +0000, Ben Laurie wrote:
>> Author: benl
>> Date: Wed May 18 21:06:20 2011
>> New Revision: 222084
>> URL: http://svn.freebsd.org/changeset/base/222084
>>
>> Log:
>> Fix clang warnings.
>>
>> Approved by: philip (mentor)
> [...]
>> - fprintf (stderr, " by changing asso_value['%c'] (char #%d) to %d\n",
>> + fprintf (stderr, " by changing asso_value['%c'] (char #%zd) to %d\n",
>> *p, p - union_set + 1, asso_values[(unsigned char)(*p)]);
>
> Hmm, both 'p' and 'union_set' are 'char *' and %zd is for ssize_t. It is
> a bit strange that it fixes the warning.
If you subtract two pointers, such as in this case, you get a ptrdiff_t.
Strictly, this doesn't have to be exactly the same type as ssize_t, but
in practice it will almost always be.
You can also cast the result to intmax_t, and use %jd, then it will
always be correct, but possibly have some small overhead.
More information about the svn-src-head
mailing list