RE: svn commit: r1535399 - in /subversion/trunk/subversion: libsvn_fs_fs/ libsvn_fs_x/ libsvn_subr/ libsvn_wc/ mod_authz_svn/ tests/cmdline/ tests/libsvn_client/ tests/libsvn_fs_fs/ tests/libsvn_fs_x/ tests/libsvn_subr/ tests/libsvn_wc/
From: Bert Huijben <bert_at_qqmail.nl>
Date: Fri, 25 Oct 2013 11:48:13 +0200
> -----Original Message-----
Our C++ code can just use NULL as it does today, while our C code uses a NULLPTR defined in a private header.
I agree that I don't like the casts there. I don't think any of the supported architectures has a problem with the original code.
On Windows where int and long are always 4 byte in x64 mode, the varargs on x64 always use 8 bytes to transfer integer types to avoid the problems we are talking about here. So as far as I can tell we are only looking at some gcc warning that we somehow enable, and want to suppress.
In the swig bindings there is a far more serious problem where we convert function pointers to void* and back, which is illegal according to the spec. (Gives hundreds if not thousands of warnings on the Windows build). If we really want to spend time on these issues we should look at those instead.
Luckily the same thing applies here: I don't know of currently supported architectures that care about this problem.
This is an archived mail posted to the Subversion Dev mailing list.