glibc++11 ABI

Oct. 1, 2016, 10:45 p.m.

I had thought being able to define lambdas and thus opening up an entire new way to obfuscate your C++ code was the most revolutionary thing about C++11, until I learned that glibc++ literally broke their ABI in order to properly follow the C++11 spec regarding containers. As usual, I only learn about exciting developments when it breaks my code, namely, when I tried to link fancy new C++11 code with old and ugly libraries compiled in the pre-C++11 days. This is as taboo as trying to run Python 2.7 code with a Python 3 interpreter - your print statements (or rather, linear complexity list::size()) has no place here.

Luckily we can always #define _GLIBCXX_USE_CXX11_ABI 0 to perpetuate a broken ABI just as Python developers refuse to migrate to py3!