Hi Jakub, > Bootstrapped/regtested on x86_64-linux, i686-linux and sparc-sun-solaris2.11 > > On the last one I've actually checked a version which had > defined(_GLIBCXX_SYMVER_SUN) next to defined(_GLIBCXX_SYMVER_GNU), but > init_priority attribute doesn't seem to be supported there and so I couldn't > actually test how this works there. Using gas and Sun ld, Rainer, does one > need to use gas + gld for init_priority or something else?
it's complicated, as usual ;-) While Solaris 11.3 ld has basic .init_priority etc. support, it doesn't know about priorities, so the support is disabled. This is what you see on gcc211 in the cfarm. Solaris 11.4 ld on the other hand added everything to make the configure test work, so HAVE_INITFINI_ARRAY_SUPPORT is enabled. Unfortunately, there's still PR c++/52477 (dup of PR c++/81337) where g++ makes unwarranted assumptions which happen to hold on Linux/glibc (only?), but often break other targets (Solaris, Darwin, FreeBSD) in unexpected places (like libsanitizer). I've made at least two attempts at a fix which got me nowhere, so I'm considering disabling HAVE_INITFINI_ARRAY_SUPPORT on Solaris for good. This is purely a g++ issue, clang++ gets this right. Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University