On 23/09/14 15:58 +0200, Rainer Orth wrote:
This patch broke Solaris bootstrap with Sun ld: when linking
libstdc++.so, ld complains

ld: fatal: libstdc++-symbols.ver-sun: 4520: symbol 'std::basic_ios<char, std::char_traits<char> 
>::move(std::basic_ios<char, std::char_traits<char> >&&)': symbol version conflict

and many more.  In that case, I find that this symbols is matched by
both the GLIBCXX_3.4 and GLIBCXX_3.4.21 patterns:

   GLIBCXX_3.4
   ##std::basic_i[g-r]* (cxx)
   _ZNSt9basic_iosIcSt11char_traitsIcEE4moveEOS2_;

   GLIBCXX_3.4.21
   ##_ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE4moveE[OR]S2_ (glob)
   _ZNSt9basic_iosIcSt11char_traitsIcEE4moveEOS2_;

Drat, I did notice those patterns were too greedy, as my new symbols
got the wrong version until I added patterns for them. I didn't
realise it would break Solaris.

I'll work on refining the GLIBCXX_3.4 patterns to be more precise.


Reply via email to