[devel] libglade

Dmitry V. Levin =?iso-8859-1?q?ldv_=CE=C1_altlinux=2Eorg?=
Вс Янв 4 19:44:33 MSK 2004


On Sun, Jan 04, 2004 at 06:01:51PM +0300, Sergey Vlasov wrote:
> On Sun, Jan 04, 2004 at 05:17:44PM +0300, Dmitry V. Levin wrote:
> > On Sun, Jan 04, 2004 at 04:10:51PM +0300, Peter V. Saveliev wrote:
> > > Нарыл. Если использовать g++, то происходят описанные события. Если же cc -
> > > то всё работает номально. Без изменения кода.
> > > 
> > > Может кто-либо прокомментировать это явление, кроме как "c++ сосёт"?
> 
> Вы пытаетесь компилировать исходник на C компилятором C++?
> Бесполезное занятие, надо использовать соответствующий компилятор и
> правильно расставлять extern "C" для связи кусков на C и C++.
> 
> > Разве что "libglade сосёт".
> > 
> > Попробуйте сделать ваш custom callback C-функцией, т.е. extern "C".
> > Если после этого с использованием g++ заработает, то libglade надо править
> > на тему поддержки demangling'а.
> 
> А надо ли?  Вроде бы в общем случае extern "C" может менять даже
> calling convention, поэтому с точки зрения стандарта C++ отсутствие
> extern "C" там, где надо - ошибка.
> 
> Кроме того, тут как раз не demangling, а поиск по имени, причём с
> неизвестной сигнатурой - т.е. вообще нерешаемая задача.

По имени можно вычислить сигнатуру.
Только, действительно, надо ли?
Если по дизайну libglade'а не положено, то, наверное, нет смысла.


-- 
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: =?iso-8859-1?q?=CF=D4=D3=D5=D4=D3=D4=D7=D5=C5=D4?=
Url     : <http://lists.altlinux.org/pipermail/devel/attachments/20040104/7446c184/attachment-0001.bin>


Подробная информация о списке рассылки Devel