[PATCH] Add missing gnu-versioned-namespace symbols
Jonathan Wakely
jwakely@redhat.com
Tue Nov 3 08:25:42 GMT 2020
On 02/11/20 21:52 +0100, François Dumont via Libstdc++ wrote:
>On 02/11/20 3:17 pm, Jonathan Wakely wrote:
>>On 01/11/20 20:48 +0100, François Dumont via Libstdc++ wrote:
>>>Several tests are failing because of those missing symbols.
>>>
>>>I understand why we need to export symbols relying in the
>>>versioned namespace but I don't understand why we need to do it
>>>for _GLIBCXX_DEBUG symbols which are not version namespace
>>>dependant.
>>
>>If you don't export the symbol, it can't be found by code linking to
>>libstdc++.so.8
>
>So I understand that in versioned namespace mode only
>gnu-versioned-namespace.ver is being used and not gnu.ver.
Right.
>>
>>This linker script is the only one used to build libstdc++.so.8 so all
>>symbols that need to be exported by that library have to be exported
>>by this script. Nothing exports that debug symbol unless you add it
>>here.
>>
>>What I don't understand is why the __istream_extract symbol isn't
>>matched by the wildcard in the extern "C++" block at the top of the
>>file.
>
>Maybe for the same reason that the std::__copy_streambufs before this
>one and some others symbols in std::__8 had to be explicitely exported
>too.
>
>But I don't know it.
Yeah, I don't understand those either.
OK for trunk anyway. I'll investigate another day.
More information about the Libstdc++
mailing list