[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: New warnings on trunk on OSX

From: Stefan Fuhrmann <stefan2_at_apache.org>
Date: Sun, 13 Nov 2016 19:30:56 +0100

On 11.11.2016 14:30, Branko Čibej wrote:
> In case anyone is interested:
>
> /Users/brane/src/svn/repos/trunk/subversion/libsvn_fs_x/changes.c:243:29: warning: implicit conversion loses integer precision:
> 'unsigned long' to 'int' [-Wshorten-64-to-32]
> first = MIN(context->next + list_first, list_last);
> ~ ~~~~~~~~~~~~~~^~~~~~~~~~~~
> /Users/brane/src/svn/repos/trunk/subversion/include/svn_sorts.h:43:33: note: expanded from macro 'MIN'
> #define MIN(a, b) ((a) < (b) ? (a) : (b))
> ^
> /Users/brane/src/svn/repos/trunk/subversion/svnserve/serve.c:3622:40: warning: implicit conversion loses integer precision:
> 'apr_uint64_t' (aka 'unsigned long long') to 'apr_uint32_t' (aka 'unsigned int') [-Wshorten-64-to-32]
> rb.dirent_fields, pool)));
> ~~~^~~~~~~~~~~~~
> /Users/brane/src/svn/repos/trunk/subversion/include/svn_error.h:353:35: note: expanded from macro 'SVN_ERR'
> svn_error_t *svn_err__temp = (expr); \
> ^~~~
These should be fixed by r1769532.

> /Users/brane/src/svn/repos/trunk/subversion/svn/conflict-callbacks.c:745:42: warning: implicit conversion loses integer precision:
> 'apr_size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
> *options = apr_array_make(result_pool, nopt, sizeof(client_option_t *));
> ~~~~~~~~~~~~~~ ^~~~
> /Users/brane/src/svn/repos/trunk/subversion/svn/conflict-callbacks.c:1205:42: warning: implicit conversion loses integer precision:
> 'apr_size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
> *options = apr_array_make(result_pool, nopt, sizeof(client_option_t *));
> ~~~~~~~~~~~~~~ ^~~~
> /Users/brane/src/svn/repos/trunk/subversion/svn/conflict-callbacks.c:1456:42: warning: implicit conversion loses integer precision:
> 'apr_size_t' (aka 'unsigned long') to 'int' [-Wshorten-64-to-32]
> *options = apr_array_make(result_pool, nopt, sizeof(client_option_t *));
> ~~~~~~~~~~~~~~ ^~~~
> /Users/brane/src/svn/repos/trunk/subversion/svn/conflict-callbacks.c:1618:37: warning: implicit conversion loses integer precision:
> 'long long' to 'int' [-Wshorten-64-to-32]
> *preferred_move_target_idx = (idx - 1);
> ~ ~~~~^~~
Those are basically caused by the ARRAY_LEN macro
returning an apr_size_t. We could make it return an
int because all those arrays are static and small-ish.
But I doesn't feel like the obvious solution.

-- Stefan^2.
Received on 2016-11-13 19:31:02 CET

This is an archived mail posted to the Subversion Dev mailing list.