On 29/10/20 21:06 +0100, Rainer Orth wrote:
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.
I think we want this attached patch instead. It tightens them up to exactly the symbols we actually need to export and no more. This will avoid needing to tighten them again in the near future when the new overloads of str() are added.
diff --git a/libstdc++-v3/config/abi/pre/gnu.ver b/libstdc++-v3/config/abi/pre/gnu.ver index 80994b203df..4dddfd3d263 100644 --- a/libstdc++-v3/config/abi/pre/gnu.ver +++ b/libstdc++-v3/config/abi/pre/gnu.ver @@ -1791,11 +1791,11 @@ GLIBCXX_3.4.21 { _ZNSt7__cxx1119basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EEC[12]ESt13_Ios_Openmode; _ZNSt7__cxx1119basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EED[012]Ev; _ZNSt7__cxx1119basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE[a34]*; - _ZNKSt7__cxx1115basic_stringbuf*; + _ZNKSt7__cxx1115basic_stringbufI[cw]St11char_traitsI[cw]ESaI[cw]EE3strEv; _ZNKSt7__cxx1118basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE3strEv; _ZNKSt7__cxx1118basic_stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE5rdbufEv; - _ZNKSt7__cxx1119basic_istringstream*; - _ZNKSt7__cxx1119basic_ostringstream*; + _ZNKSt7__cxx1119basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE3strEv; + _ZNKSt7__cxx1119basic_[io]stringstreamI[cw]St11char_traitsI[cw]ESaI[cw]EE5rdbufEv; _ZT[ISTV]NSt7__cxx1115basic_stringbuf*; _ZT[ISTV]NSt7__cxx1118basic_stringstream*; _ZT[ISTV]NSt7__cxx1119basic_istringstream*;