On 28.12.2010 23:13, Peter Samuelson wrote:
> [C. Michael Pilato]
>>> svn_fspath__is_canonical
>>> svn_fspath__dirname
>>> svn_fspath__basename
>>> svn_fspath__split
>>> svn_fspath__join
>>> svn_fspath__is_child
>>> svn_fspath__skip_ancestor
>>> svn_fspath__is_ancestor
>>> svn_fspath__get_longest_ancestor
>>> svn_error__locate
>>>
>>> svn_error__malfunction
>> While we've mandated that "__" must be used for semi-public
>> functions, we've never said that it can't be used for private ones.
> Kamesh is talking about public, not private, functions. I.e., ones
> where we actually do have an ABI promise to keep.
>
> I looked at svn_error__locate last week. It's really only useful in
> --enable-maintainer-mode, but the way it's implemented, it ends up
> being used by macros in the public (non-maintainer) ABI, so even if we
> eliminate those callers, we have to supply the function itself forever.
> I've addressed this as best we can, in r1053469.
Now I'm really mystified. When I added those location-tracing functions
and macros, they were only ever enabled with SVN_DEBUG turned on (i.e.,
in maintainer-mode). Now I see that those #ifdef wrappers are gone, and
can't recall an explanation as to why that's a good thing.
Can anyone remember what that change was good for?
-- Brane
Received on 2010-12-29 09:43:42 CET