[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