Questions re Symbol versioning

David Collier-Brown davecb at sun.com
Mon May 26 12:05:24 GMT 2008


Then that's one of the easy cases: think of it as a relational database (;-))
where you ca add columns to the end, but to get rid of a column you
need to have all it's elements NULL (ie, all callers can accept a NULL
return code) and to change one you need to add and then delete.

--dave

Stefan (metze) Metzmacher wrote:
> David Collier-Brown schrieb:
> 
>>Stefan (metze) Metzmacher wrote:
>>
>>>>>It doesn't help everywhere, but it doesn't harm where it's supported.
>>>>>So far the build-farm looks ok.
>>>
>>>
>>>Gerald (Jerry) Carter schrieb:
>>>
>>>
>>>>But it doesn't help us with versioning on platforms that
>>>>don't use GNU ld right?  So we have to go through all the hoops
>>>>of maintaining backwards compatibility (compatible DSO files).
>>>>So what I'm missing is that this seems to make those platforms
>>>>the corner cases which means they are guaranteed to break.
>>>>My have to support two solutions at all ?
>>>
>>>
>>>A logical next question is how does it fail when the linker
>>>doesn't honor the versioning? Doe you get
>>>- the first one found in the file?
>>>- the last one?
>>>- both if it's called more than once?
>>>
>>>Another might be, can you implement it with, for example,
>>>name mangling for linkers which don't support it?
>>
>>
>> D'oh!  I forgot the most basic question: what are the interfaces
>>you're planning to change?  Several forms of mutation can be
>>done cleanly without signature changes...
> 
> 
> We don't want to change a functions yet, but we want to add new
> functions to the interface which older versions of the library won't have.
> 
> metze
> 

-- 
David Collier-Brown            | Always do right. This will gratify
Sun Microsystems, Toronto      | some people and astonish the rest
davecb at sun.com                 |                      -- Mark Twain
(905) 943-1983, cell: (647) 833-9377, (800) 555-9786 x56583
bridge: (877) 385-4099 code: 506 9191#


More information about the samba-technical mailing list