use warnings 'void' ;
"abc"; # OP_CONST
7 ; # OP_CONST
+5 || print "bad\n"; # test OPpCONST_SHORTCIRCUIT
+use constant U => undef;
+print "boo\n" if U; # test OPpCONST_SHORTCIRCUIT
+$[ = 2; # should not warn
no warnings 'void' ;
"abc"; # OP_CONST
7 ; # OP_CONST
use warnings 'parenthesis' ;
my $a, $b = (1,2);
my @foo,%bar, $quux; # there's a TAB here
+my $x, $y or print;
no warnings 'parenthesis' ;
my $c, $d = (1,2);
EXPECT
########
# op.c
use warnings 'misc';
+use feature 'err';
open FH, "<abc";
$_ = <FH> err $_ = 1;
($_ = <FH>) // ($_ = 1);
local(vec($x,0,1)); # OP_VEC
local($a[$b]); # OP_AELEM ok
local($a{$b}); # OP_HELEM ok
+local($[); # OP_CONST
no warnings 'syntax';
EXPECT
Useless localization of substr at - line 48.
Useless localization of match position at - line 49.
Useless localization of vec at - line 50.
+########
+# op.c
+use warnings 'deprecated';
+my $x1 if 0;
+my @x2 if 0;
+my %x3 if 0;
+my ($x4) if 0;
+my ($x5,@x6, %x7) if 0;
+0 && my $z1;
+0 && my (%z2);
+# these shouldn't warn
+our $x if 0;
+our $x unless 0;
+if (0) { my $w1 }
+if (my $w2) { $a=1 }
+if ($a && (my $w3 = 1)) {$a = 2}
+
+EXPECT
+Deprecated use of my() in false conditional at - line 3.
+Deprecated use of my() in false conditional at - line 4.
+Deprecated use of my() in false conditional at - line 5.
+Deprecated use of my() in false conditional at - line 6.
+Deprecated use of my() in false conditional at - line 7.
+Deprecated use of my() in false conditional at - line 8.
+Deprecated use of my() in false conditional at - line 9.
+########
+# op.c
+use feature 'state';
+use warnings 'misc';
+state($x) = 1;
+(state $y) = 2;
+(state $z, my $t) = (3, 4);
+(state $foo, state $bar) = (5, 6);
+(undef, my $v, state $w) = (7 .. 9);
+no warnings 'misc';
+state($x) = 1;
+(state $y) = 2;
+(state $z, my $t) = (3, 4);
+(state $foo, state $bar) = (5, 6);
+(undef, my $v, state $w) = (7 .. 9);
+EXPECT
+State variable $z will be reinitialized at - line 6.
+State variable $foo will be reinitialized at - line 7.
+State variable $bar will be reinitialized at - line 7.
+State variable $w will be reinitialized at - line 8.