[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: Questions about svn_error_clear().

From: Branko Čibej <brane_at_xbc.nu>
Date: 2004-12-16 22:24:45 CET

Garrett Rooney wrote:

> Steven Kirk wrote:
>
>>
>>>> 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!
>
>
> Actually, I think I was mistaken. I wasn't fully awake when reading
> that email... It will work in the majority of cases, although I'm not
> sure if it's valid to take the address of a temporary (i.e.
> svn_error_clear(svn_function_that_returns_error()) might be problematic).

It is problematic, i.e., it can't be done.

-- Brane

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Dec 16 22:28:17 2004

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.