>> Another option
>>
>>  #define svn_error_clear(err) svn_error_clear2(&(err))
>>
>> And at the end of svn_error_clear_internal:
>>
>>  *err = NULL;
>>
>> svn_error_clear() would remain in the svn libs as to not break binary 
>> compatibility.
>
> Can't do that because it changes the signature of the function 
> consumers of the API get when they write svn_error_clear, suddenly all 
> their code breaks because they're not passing a pointer to a pointer 
> to an error object.  It would preserve binary compatability, but not 
> source compatability, we need both.
Sorry, I don't understand... Binaries would remain linked to 
svn_error_clear, whilst the svn_error_clear() macro would automatically 
redirect newly compiled code to the new svn_error_clear2() function. 
AFAICS, you retain binary and source compatibility. But then I always 
have had trouble understanding compatability rules!
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Dec 16 16:18:56 2004