This is the mail archive of the
mailing list for the GCC project.
Re: GCC 4.7.0RC: Mangled names in cc1
email@example.com (Ludovic CourtÃs) writes:
> Ian Lance Taylor <firstname.lastname@example.org> skribis:
>> email@example.com (Ludovic CourtÃs) writes:
>>> Ian Lance Taylor <firstname.lastname@example.org> skribis:
>>>> email@example.com (Ludovic CourtÃs) writes:
>>>>> 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.
>>>> This is an unfortunate truth during our transition to building gcc with
>>>> C++. There is going to be a period of time when the compiler may be
>>>> built as either C or C++. The end goal is for the compiler to always be
>>>> built with C++, but until we reach that state I think plugin writers
>>>> will have to test.
>>> What about wrapping the C API in extern "C"?
>> We eventually will want the internal APIs to be C++, so this transition
>> will inevitably happen at some point.
> I understand the goal. However, should a C++ API be added, the C-only
> part could still be kept extern "C".
We are talking here about internal GCC functions. We are not talking
about an actual defined API. The defined API is in plugin-api.h, and
that remains extern "C". There is no "C-only part" of the internal API.
> For 4.7.0, as Duncan Sands writes, it would be a very helpful for the
> ABI to be independent of configuration optionsâi.e., either mangled or
> unmangled symbols.
That just postpones the pain to gcc 4.8.0.