[Moscow.pm] Fwd: Почему меняется старое значение, хотя переменная локализирована?

KES kes-kes на yandex.ru
Ср Янв 6 11:38:54 PST 2016


Я извиняюсь. Упустил важный момент. Вот полный код:
$ cat Devel/DB.pm
package DB;


sub DB::DB {
}

sub sub {
    {
        $DB::single = 7; my $x = \$DB::single;
        print "Before: ". \$DB::single ." <<$x $$x\n";
        local $DB::single = 0;
        print "After: ". \$DB::single ." <<$x $$x\n";
    }

    return &$DB::sub;
}

1;

$ perl -d:DB -e 'sub t{} t()'

$ perl -v 
This is perl 5, version 22, subversion 0 (v5.22.0) built for x86_64-linux

PS. Думаю в ближайшее мне придется очень глубоко копнуть в исходники перл, т.к. в дебаг режиме шероховатость на шероховатости :`-(


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