[Moscow.pm] Код работает в 5.8.8 и не работае в 5.10.1, почему?

Sergey Leschenko sergle.ua на gmail.com
Вт Фев 1 03:10:38 PST 2011


Добрый день

Есть такой фрагмент:

use strict;
use Data::Dumper;

my $info = {
    Column1 => 'Value1',
    Column2 => 'Value2',
    Column3 => 'Value3',
};
my @fields_from_master = qw(Column1 Column2);
my @fields_to_alias = qw(Col1 Col2);
my %values_from_master = ();

@{ %values_from_master }{ @fields_to_alias } = @{ %$info
}{@fields_from_master };

print Dumper(\%values_from_master);


Enterprise Linux Enterprise Linux Server release 5.4 (Carthage)
This is perl, v5.8.8
perl t.pl
$VAR1 = {
          'Col2' => 'Value2',
          'Col1' => 'Value1'
        };

Red Hat Enterprise Linux Server release 6.0 (Santiago)
This is perl, v5.10.1
perl t.pl
Can't use string ("3/8") as a HASH ref while "strict refs" in use at
t.pl line 13.

Чем объясняется эта ошибка? в perldelta сходу ничего похожего нет.

-- 
Sergey


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