>>>> I believe this is not intentional, right?
>>> No, this is intentional. We bootstrap the compiler using the C++
>>> front-end now. We build stage1 with the C compiler and then build
>>> stages 2 and 3 with the C++ compiler.
>> However, this means that plug-ins must now be built with g++, except
>> when GCC was configured with --disable-build-poststage1-with-cxx. This
>> seems difficult to deal with, for plug-in writers.
> I’m really concerned about the maintenance difficulties that this change
> entails for external plug-ins.
does this mean that if built with --disable-bootstrap then symbols aren't
mangled, while otherwise they are? I personally don't mind if symbols are
mangled or not, but it would be simpler if symbols can be relied upon to always
be mangled, or always not be mangled...
I guess I could work around it by detecting at build time whether the targeted
gcc has mangled symbols, and using extern "C" only if not mangled. It would
help if there was a simple way to ask gcc if it is using mangled symbols or not.