perl5.10 и perl5.12 проблема в while цикле

И всё прочее, что касается HTML
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

perl5.10 и perl5.12 проблема в while цикле

Непрочитанное сообщение ProFTP » 2011-03-10 19:13:55

делаю самое элементарное

Код: Выделить всё

$h->{$1."%".$2}++  while ( $CGI->{in} =~ /(\d)(\d{5})/g );
работает!
работает на версии:

Код: Выделить всё

This is perl, v5.10.1 (*) built for i486-linux-gnu-thread-multi

но когда, пытаюсь на сервер

Код: Выделить всё

This is perl 5, version 12, subversion 1 (v5.12.1) built for i386-freebsd-thread-multi-64int
данный участок кода с while идет в безконечность
как только его закомментирвоать, то безконечности нету!

что поменялось в while на v5.12.1?

т.е. мне нужно получить массив или хэш или такие строки $1."%".$2
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: perl5.10 и perl5.12 проблема в while цикле

Непрочитанное сообщение ProFTP » 2011-03-13 0:56:39

там было запутано не много, много разных циклов, может быть проблема в этом

я сделал просто анонимную подпрограмму (просто функцию) и выполнил через нее
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение