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.