Нет никаких последствий для этого использования. Я думаю, что цель состоит в том, чтобы помочь вам избежать последствий, когда предупреждение не может быть выдано.
Срезы на LHS "=" причиной = "являются оператором назначения списка.
$ perl -E'sub f { return 4; } my $x = $a[1] = f(); say $x'
4
$ perl -E'sub f { return 4; } my $x = @a[1] = f(); say $x'
1
Срезы оценивают индекс в контексте списка.
$ perl -E'sub f { my @i = 3; @i } @a=qw( a b c d e f ); say @a[f()]'
d
$ perl -E'sub f { my @i = 3; @i } @a=qw( a b c d e f ); say $a[f()]'
b