[devel] Q: bison strdup

Alexey Tourbin at на altlinux.ru
Вс Окт 8 03:17:35 MSD 2006


On Sun, Oct 08, 2006 at 02:00:49AM +0400, Alexey Tourbin wrote:
> Специалисты по бизону!
> Кто-нибудь знает, когда я хочу немного модифицировать $1, нужно strdup
> делать или нет?  А то у меня после вот этого вот изменения SEGV стал
> наблюдаться.  Если нужно делать strdup, как тогда в конце правильно
> очистить память?

А в общем я кажется стал догадываться в чём дело.  Надо UPE перечитать,
а то уже забыл что это за бизон такой.

> @@ -95,7 +109,7 @@ symbols		: symbols symbol
>  symbol		: name COLON NUMBER
>  		  {
>  			$$ = calloc (1, sizeof (cvs_symbol));
> -			$$->name = $1;
> +			$$->name = fixup_symbol ($1);
>  			$$->number = $3;
>  		  }
>  		;

Здесь name это во-первых нетерминальный символ, то есть откуда он взялся
и в каком виде это ещё надо думать.  Во-вторых если бы он был
тенминальным значит его отдал flex и надо смотреть делается ли в *.l
что-то типа strdup(yytext) или нет.

Кому надо UPE на русском обращайтесь.
----------- следущая часть -----------
Было удалено вложение не в текстовом формате...
Имя     : отсутствует
Тип     : application/pgp-signature
Размер  : 189 байтов
Описание: отсутствует
Url     : http://lists.altlinux.org/pipermail/devel/attachments/20061008/142b90dc/attachment.bin 


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