[PATCH] libstdc++: Implement C++20 features for <sstream>
Rainer Orth
ro@CeBiTec.Uni-Bielefeld.DE
Thu Oct 29 20:06:37 GMT 2020
Hi Jonathan,
> On > The patch that was committed broke the linker script. The attached
> patch restores the piece that got lost, and removes the duplicate
> patterns added for the new symbols. Pushed to trunk.
even this fixed version broke Solaris bootstrap:
ld: fatal: libstdc++-symbols.ver-sun: 7318: symbol '_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE13get_allocatorEv': symbol version conflict
ld: fatal: libstdc++-symbols.ver-sun: 7319: symbol '_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE13get_allocatorEv': symbol version conflict
matched by
##_ZNKSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE13get_allocatorEv (glob)
_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE13get_allocatorEv;
_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE13get_allocatorEv;
and
##_ZNKSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE[0-35-9]* (glob)
which matches
_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE13get_allocatorEv;
_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE3strEv;
_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE13get_allocatorEv;
_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
ld: fatal: libstdc++-symbols.ver-sun: 7321: symbol '_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE4viewEv': symbol version conflict
ld: fatal: libstdc++-symbols.ver-sun: 7322: symbol '_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE4viewEv': symbol version conflict
matched by
##_ZNKSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE4viewEv (glob)
_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE4viewEv;
_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE4viewEv;
and
##_ZNKSt7__cxx1115basic_stringbuf* (glob)
which matches
_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE13get_allocatorEv;
_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE3strEv;
_ZNKSt7__cxx1115basic_stringbufIcSt11char_traitsIcESaIcEE4viewEv;
_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE13get_allocatorEv;
_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE3strEv;
_ZNKSt7__cxx1115basic_stringbufIwSt11char_traitsIwESaIwEE4viewEv;
ld: fatal: libstdc++-symbols.ver-sun: 7342: symbol '_ZNKSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEE4viewEv': symbol version conflict
ld: fatal: libstdc++-symbols.ver-sun: 7343: symbol '_ZNKSt7__cxx1119basic_istringstreamIwSt11char_traitsIwESaIwEE4viewEv': symbol version conflict
matched by
##_ZNKSt7__cxx1119basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE4viewEv (glob)
_ZNKSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEE4viewEv;
_ZNKSt7__cxx1119basic_istringstreamIwSt11char_traitsIwESaIwEE4viewEv;
_ZNKSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEE4viewEv;
_ZNKSt7__cxx1119basic_ostringstreamIwSt11char_traitsIwESaIwEE4viewEv;
and
##_ZNKSt7__cxx1119basic_istringstream* (glob)
##_ZNKSt7__cxx1119basic_ostringstream* (glob)
which match
_ZNKSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEE3strEv;
_ZNKSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEE4viewEv;
_ZNKSt7__cxx1119basic_istringstreamIcSt11char_traitsIcESaIcEE5rdbufEv;
_ZNKSt7__cxx1119basic_istringstreamIwSt11char_traitsIwESaIwEE3strEv;
_ZNKSt7__cxx1119basic_istringstreamIwSt11char_traitsIwESaIwEE4viewEv;
_ZNKSt7__cxx1119basic_istringstreamIwSt11char_traitsIwESaIwEE5rdbufEv;
_ZNKSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEE3strEv;
_ZNKSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEE4viewEv;
_ZNKSt7__cxx1119basic_ostringstreamIcSt11char_traitsIcESaIcEE5rdbufEv;
_ZNKSt7__cxx1119basic_ostringstreamIwSt11char_traitsIwESaIwEE3strEv;
_ZNKSt7__cxx1119basic_ostringstreamIwSt11char_traitsIwESaIwEE4viewEv;
_ZNKSt7__cxx1119basic_ostringstreamIwSt11char_traitsIwESaIwEE5rdbufEv;
Tightening the patterns as in the attached patch at least allows
libstdc++.so.6 to link on i386-pc-solaris2.11; full bootstrap still
running. However, I can't tell if this is really correct.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gv.patch
Type: text/x-patch
Size: 1173 bytes
Desc: not available
URL: <https://gcc.gnu.org/pipermail/libstdc++/attachments/20201029/f7114442/attachment.bin>
More information about the Libstdc++
mailing list