ABI stability
ABI stability
Posted Jun 6, 2013 19:27 UTC (Thu) by zlynx (guest, #2285)In reply to: ABI stability by jwakely
Parent article: GCC 4.8.1 released
I don't have an example to point to right this instant but I have definitely hit serious C++ ABI bugs in the past while running Gentoo. I updated to GCC 4.something and older C++ programs started segfaulting.
Not to mention that on IA64 important things like exception handlers would just fail to catch exceptions every other GCC version.
This past experience is why the C++ library that I'm responsible for at work is built for each customer's particular Linux distribution rather than trying to build one binary that works for everybody. It's also why everything is hidden behind a private implementation pointer and there is NO USAGE of anything inline in the includes.
Posted Jun 7, 2013 17:46 UTC (Fri)
by khim (subscriber, #9252)
[Link]
True, but what does it change? You can say the same about Android, GLibC, Linux, Windows or any other project which is serious about ABI compatibility. It's your choice but it does not prove anything. Somehow others can build one binary and it works just fine. I've seen problems with many libraries but libstdc++ was never a problem. It's certainly possible to build libstdc++ in a fashion which will make it incompatible, but most major distributions carry LSB-compatible libstdc++ and work just fine with a single binary.
Posted Jun 7, 2013 19:45 UTC (Fri)
by jwakely (subscriber, #60262)
[Link]
And I cannot parse a sentence containing both "on IA64" and "important things" ;)
ABI stability
If GCC didn't break ABI compatibility there wouldn't be the need to fix it in GCC point releases.
This past experience is why the C++ library that I'm responsible for at work is built for each customer's particular Linux distribution rather than trying to build one binary that works for everybody.
ABI stability