В gcc вкралась страшная бага, из-за которой некорректно работает visibility для libstdc++.
Created attachment 1444 [details] gcc3.4.srpm.diff Патч, найденный Алексеем Морозовым
А testcase на это есть какой-нибудь?
Насчет testcase незнаю, но то, что kde тестирует перед сборкой наличие этой пропатченности - одноздачно.
Ну хорошо, может ссылка на источник есть?
Тут что-то похожее есть, больше не нашел http://cvs.mandriva.com/cgi-bin/cvsweb.cgi/SPECS/gcc4.0/ Алексей лучше подскажет
Ну, собственно говоря, проблема с "неаккуратным" использованием функциональности, связанной с visibility, описана прямо на http://gcc.gnu.org/wiki/Visibility, в разделе "Problems with C++ exceptions (please read!)". Патч этот, на самом деле, и не патч вовсе, а бэкпорт того, что было найдено в заголовках старших версий gcc (4.x, кажется, в редакции SuSE-10).
Алексей, судя по тем патчам, которые обсуждались на gcc.gnu.org, и тому патчу, который включён в opensuse/distribution/SL-OSS-stable/inst-source/suse/src/gcc-4.0.2_20050901-3.src.rpm, того что есть в gcc-4.0.x (и следовательно того что было спортировано) недостаточно. Думаю, что gcc3.4 лучше не трогать - слишком легко сломать.
Ну, в общем, моё дело что называется, предложить. У меня оно, вроде, работает, в том смысле, что не ломает ничего из того, что не было сломано раньше. Your mileage may vary. Совершенно точно можно сказать, что без этого патча попытки собирать приложения с -fvisibility несколько более опасны. так что, стоит, видимо, провозгласить, что до тех пор, пока у нас не будет gcc-4.1, собирать что-либо плюсовое с -fvisibility=hidden не следует. Ну а вообще, конечно, ждем-с счастья в виде модного gcc.
Счастье в виде нового компилятора наступило.
да :-)