GSOC 2015

Maciej Poleski poleski.maciej at gmail.com
Thu May 28 18:23:26 UTC 2015


Dnia czwartek, 28 maja 2015 15:54:57 piszesz:
> 
> Again, I'm missing again some context. kdev-clang will stick to clang-c, the 
> libTooling support must be handled somehow separately, e.g. in a separate 
> process/plugin/library, due to the ABI instability of libTooling.
> 

What does it mean "ABI instability"?
C++ does not specify ABI. ABI compatibility between modules in some libraries like Qt is something like "assisted" coincidence, result of thoroughly implemented changes from version to version of library which can free user from need of recompilation on every update of any dependency. But in general we cannot guarantee this.

libTooling ABI is not stable (similarly to ABI of many other libraries), but Clang libraries are not DSO (shared libraries). These are in fact archives of object code. This code is (statically) linked into binary by the time of compilation. Even update of Clang shouldn't break already built code.

That's why i don't understand why "libTooling must be handled separately... due to the ABI instability". Can You elaborate more on this?

> 
> Cheers
> 

Best Regards
Maciej Poleski



More information about the KDevelop-devel mailing list