The lack of C++ ABIs is a pain in the neck, but it is not something I would like to blame on
the GCC people. The C++ standard is both complex and itself instable, and producing a stable
ABI for it (let alone one compatible with other compilers) is no mean task. The easiest way
to deal with the problem that I know of is to wrap the ABI in something else (i.e. all exports
are extern "C", or on Windows COM is popular for the purpose).