use warnings; no warnings 'deprecated'; use strict; use Test::More tests => 12; our @i4 = (3, 5, 3, 5); $[ = 3; is_deeply [ scalar qw(a b c d e f)[3,4] ], [ qw(b) ]; is_deeply [ qw(a b c d e f)[3,4,8,9] ], [ qw(a b f), undef ]; is_deeply [ scalar qw(a b c d e f)[@i4] ], [ qw(c) ]; is_deeply [ qw(a b c d e f)[@i4] ], [ qw(a c a c) ]; is_deeply [ 3, 4, qw(a b c d e f)[@i4] ], [ 3, 4, qw(a c a c) ]; is_deeply [ qw(a b c d e f)[-1,-2] ], [ qw(f e) ]; is_deeply [ qw(a b c d e f)[2,1] ], [ qw(f e) ]; { $[ = -3; is_deeply [qw(a b c d e f)[-3]], ['a']; } SKIP: { skip "no lexical \$_", 4 unless eval q{my $_; 1}; eval q{ my $_; is_deeply [ scalar qw(a b c d e f)[3,4] ], [ qw(b) ]; is_deeply [ qw(a b c d e f)[3,4,8,9] ], [ qw(a b f), undef ]; is_deeply [ scalar qw(a b c d e f)[@i4] ], [ qw(c) ]; is_deeply [ qw(a b c d e f)[@i4] ], [ qw(a c a c) ]; }; } 1;