[devel] Re: lua5-posix-2003.11.07-alt2: rebuild failed [1]
Alexey Tourbin
=?iso-8859-1?q?at_=CE=C1_altlinux=2Eru?=
Ср Июн 29 10:30:00 MSD 2005
On Wed, Jun 29, 2005 at 10:09:16AM +0400, Anton D. Kachalov wrote:
> On Wed, Jun 29, 2005 at 09:40:22AM +0400, Anton Farygin wrote:
> > Отрывать патч, естественно.
> Ничего естественного. Фиксить надо, а не отрывать.
> Кстати, фиксил я lua5-5.x.x, а не lua5-posix-...
И тот и другой теперь не работают. lua5-posix демонстрирует segfault
во время теста при сборке. Я первый раз этому большого значения не
придал, а когда появилось "rebuild failed [1]", стало ясно, что что-то
не так. Я ещё иногда использую lua в качестве кальукулятора, и сегодня
при перемножении двух чисел получил segfault. Тут-то я и всполошился. :)
> > Это похоже последствия портирования на x86_64 ;-)
>
> Это кривая lua. Вот из-за чего взялся этот патч (для lua5-5.0.2):
> ltable.c: In function `luaH_mainposition':
> ltable.c:108: warning: cast from pointer to integer of different size
> ltable.c:110: warning: cast from pointer to integer of different size
>
> Это из-за функции IntPoint (llimits.h):
> /*
> ** conversion of pointer to integer
> ** this is for hashing only; there is no problem if the integer
> ** cannot hold the whole pointer value
> */
> #define IntPoint(p) ((lu_hash)(p))
>
> А ещё <stdint.h>:
> #if __WORDSIZE == 64
> typedef long int intptr_t;
> typedef unsigned long int uintptr_t;
> #else
> typedef int intptr_t;
> typedef unsigned int uintptr_t;
> #endif
>
> Есть предложение заменить intptr_t на uintptr_t.
Сейчас попробую.
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : =?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/20050629/028907f3/attachment-0001.bin>
Подробная информация о списке рассылки Devel