[LLVMdev] Clarification on stable release shared object ABI compatibility
David.Chisnall at cl.cam.ac.uk
Tue Dec 2 09:59:43 PST 2014
On 2 Dec 2014, at 16:54, Tom Stellard <tom at stellard.net> wrote:
> My understanding is that if new symbols are added to 3.5.1, then
> programs built against 3.5.0 will still be able to link against 3.5.1,
> however programs built against 3.5.1 will fail to link against 3.5.0.
> My initial feeling is that we should not allow new symbols in 3.5.1,
> so that programs can downgrade from 3.5.1 to 3.5.0 without rebuilding,
> but I wanted to get more opinions on this.
I don't have a problem with adding new symbols (although in C++ it's important to make sure that we don't add new vtable entries). As long as programs built with LLVM x.y.z work with LLVM x.y.z+n then there's no issue for me. Most packaging systems can express a dependency like this.
More information about the llvm-dev