https://perldoc.perl.org/perlref#Declaring-a-Reference-to-a-Variable
Beginning in v5.26.0, the referencing operator can come after my, state, our, or local. This syntax must be enabled with use feature 'declared_refs' . It is experimental, and will warn by default unless no warnings experimental::refaliasing is in effect.
In reality is the warning disabled with no warnings 'experimental::declared_refs';
the experimental::refaliasing warning belongs to https://perldoc.perl.org/perlref#Assigning-to-References
Sample code:
use strict; use warnings; use Data::Dump qw/pp dd/; use feature qw( declared_refs refaliasing say ); no warnings 'experimental::refaliasing'; my $a = [666]; my @a; \@a = $a; say $a[0]; no warnings 'experimental::declared_refs'; my \@arr = [42];
C:/Strawberry/perl/bin\perl.exe -w d:/tmp/pm/auto_ref.pl 666 Compilation finished at Sat Oct 16 14:45:33
NB: that use feature qw(declared_refs) doesn't seem to make sense without the other feature.
my \@arr; without assignment will create a new warning "Useless use of single ref constructor in void context"
Cheers Rolf
(addicted to the Perl Programming Language :)
Wikisyntax for the Monastery
In reply to POD for use feature 'declared_refs' wrong by LanX
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |