This is the mail archive of the libstdc++@gcc.gnu.org mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [v3] <regex> implementation foundation, version 1


On 20 June 2010 05:28, Paolo Carlini wrote:
>
>> The offending container is in fact a std::stack of indexes into a
>> std::vector of a type defined private to the library. ?It doesn't
>> matter: ?the genesis of the problem is that the linker script places all
>> symbols matching std::v* (or std::d*) in version GLIBCXX_3.4. ?These
>> symbols were not in that older version, so boom there's an ABI
>> incompatibility. ?It does not matter what type the vector is
>> instantiated on, it will fail the ABI check.
>
> As I said in a previous message - did you get it in your mailbox? - this is
> a quite common problem, just tighten the existing old pattern in the linker
> script to *not* match the new symbols you want to export now, then add a new
> pattern at the last open version for the new symbols.

Right, the rule isn't "all symbols matching vector must be in
GLIBCXX_3.4" it's that all _existing_ symbols using vector must have
that symbol version.  If you add new symbols, change the patterns so
the existing ones get the old version and the new ones get the new
version.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]