On 25.10.2013 11:18, Branko Čibej wrote: > On 25.10.2013 11:15, Julian Foad wrote: >> I (Julian Foad) wrote: >> >>>> On Fri, 25 Oct 2013, Branko Čibej wrote: >>>>>> URL: http://svn.apache.org/r1535399 >>>>>> Log: >>>>>> Cast NULL to (char *) in vararg calls to svn_dirent_join_many >>>>>> and svn_path_join_many. >>>>> Why? On which platform do you expect a char* to have a different size >>>>> and/or representation than a void*? >>> Brane, we have been doing this consistently for the last three years; >>> Philip's commit was just continuing it. See [1] for the original >>> discussion. >>> >>> [1] Email to dev@ from Stefan Sperling on 2011-02-25, subject "Re: svn >>> commit: r1074461 ...", >>> <http://svn.haxx.se/dev/archive-2011-02/0841.shtml>. >> Now having read the original discussion (October 2010; the later email >> mentioned above is merely a good reference to it), it appears we are doing >> this in order to silence compiler warnings rather than for object-code >> correctness. > Yes, exactly my point ... compiler warnings that someone goes out of > their way to enable, even though they're not enabled in maintainer mode. > You know how I feel about /that/. > > And then we have week-long flames on the dev@ list when someone > pre-emptively initializes a local var to silence a "may be used > uninitialized" warning. See the first entry in the 1.8.x STATUS file, > for example. Duh.
Sideline: *IF* we, as a community, agree to do this, then: (a) the rule should be documented in HACKING, and (b) there should be a '#define NULLPTR ((void*)0)' or reasonable facsimile in either svn_types.h or svn_private_config.h. I really do not want to see '(char*)NULL' all over the place. That's ... unsightly. Oh, and (c) the associated warning must be enabled in maintainer mode. -- Brane -- Branko Čibej | Director of Subversion WANdisco // Non-Stop Data e. br...@wandisco.com