>> 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