On 11/5/14 10:49 AM, Barry Scott wrote:
> I have been building pysvn against the latest svn kits. 1.7.18, 1.8.10 and 
> 1.9.0-alpha2
> using the Mac OS X Xcode 6.1 command line tools, clang is the compiler not 
> gcc.
> 
> Compiling and testing pysvn against 1.7.18 and 1.8.10 works with no errors.
> 
> But I get compile errors when compiling pysvn against 1.9.0-alpha2:
> 
> pysvn_client_cmd_info.cpp:1383:39: error: use of undeclared identifier 
> 'svn_sort__hash'
>     apr_array_header_t *statusarray = svn_sort__hash( status_hash, 
> svn_sort_compare_items_as_paths, pool );
>                                       ^
> pysvn_client_cmd_info.cpp:1388:41: error: subscript of pointer to incomplete 
> type 'const svn_sort__item_t'
>         const svn_sort__item_t *item = &APR_ARRAY_IDX( statusarray, i, const 
> svn_sort__item_t );
>                                         
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> /usr/include/apr-1/apr_tables.h:141:57: note: expanded from macro 
> 'APR_ARRAY_IDX'
> #define APR_ARRAY_IDX(ary,i,type) (((type *)(ary)->elts)[i])
>                                    ~~~~~~~~~~~~~~~~~~~~~^
> svn_sort.h has been included.

First of all in general reports about pysvn should go to the pysvn devleopers
and not the SVN developers.  It's a separate project which you can find here:
http://pysvn.tigris.org/

Looks like Bert moved this stuff into a private header in
http://svn.apache.org/r1555133 .  While these have always been technically
private, they have been in public headers for a very long time (see
http://subversion.tigris.org/issues/show_bug.cgi?id=1644 ).

In general I agree with Bert's change since nobody should be using these
private APIs.  In practice they have been being used.

Seems to me that we should rollback the long standing private symbols in
svn_sorts.h while not adding any new symbols.

Reply via email to