« Return to Thread: GCC 4.7.0RC: Mangled names in cc1

Re: GCC 4.7.0RC: Mangled names in cc1

by Duncan Sands :: Rate this Message:

| View in Thread

Hi,

>>>> 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.
>>
>> OK.
>>
>> 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.

Ciao, Duncan.

 « Return to Thread: GCC 4.7.0RC: Mangled names in cc1