[patch] Implement move semantics for iostreams
Tue Sep 23 14:20:00 GMT 2014
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:
> ##std::basic_i[g-r]* (cxx)
> ##_ZNSt9basic_iosI[cw]St11char_traitsI[cw]EE4moveE[OR]S2_ (glob)
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.
More information about the Gcc-patches