[Moscow.pm] unexpected bit width
Anton Yuzhaninov
citrin на citrin.ru
Вт Мар 17 04:39:40 PDT 2015
On 04/22/14 23:16, Alan Rafagudinov wrote:
> Мозг себе сломал, не могу понять природу ошибки:
>
>
> #!/usr/bin/env perl
>
> use strict;
> use utf8;
>
> my $str = " № 00";
>
> $str =~ /\bXXX\s?0/i;
>
>
> При запуске этого кода получаю:
>
> "panic: swash_fetch got swatch of unexpected bit width, slen=32,
> needents=64 at ./1.pl line 8."
Столкнулся с очень похоже проблемой.
use utf8;
use open qw/:std :encoding(utf8)/;
use Devel::Peek;
my $x = "0005 RU Москва";
$x =~ /^(.*?)\s(.*)$/;
warn $2;
Dump($2);
warn lc($2);
При запуске на 5.20.2
RU Москва at ./ttt2.pl line 10.
SV = PVMG(0x801dd8c60) at 0x801ce2f78
REFCNT = 1
FLAGS = (GMG,SMG,POK,IsCOW,pPOK,UTF8)
IV = 0
NV = 0
PV = 0x801c8b340 "RU \320\234\320\276\321\201\320\272\320\262\320\260"\0
[UTF8 "RU \x{41c}\x{43e}\x{441}\x{43a}\x{432}\x{430}"]
CUR = 15
LEN = 17
COW_REFCNT = 0
MAGIC = 0x801d257c0
MG_VIRTUAL = &PL_vtbl_sv
MG_TYPE = PERL_MAGIC_sv(\0)
MG_OBJ = 0x801ce2fc0
MG_LEN = 2
panic: swash_fetch got swatch of unexpected bit width, slen=1024, needents=64 at
./ttt2.pl line 12.
UTF насколько могу видеть впролне валидный.
В 12-й строке - lc
На 5.20.1 скрипт работает без ошибок.
Подробная информация о списке рассылки Moscow-pm