ununit pos value warning identified the wrong variable name
[p5sagit/p5-mst-13.2.git] / t / lib / warnings / 9uninit
index 6f3b3b9..9fb5df1 100644 (file)
@@ -625,8 +625,8 @@ Use of uninitialized value $m1 in glob elem at - line 5.
 Use of uninitialized value $g1 in subroutine prototype at - line 6.
 Use of uninitialized value $g1 in bless at - line 7.
 Use of uninitialized value $m1 in quoted execution (``, qx) at - line 8.
-Use of uninitialized value $g1 in concatenation (.) or string at - line 10.
 Use of uninitialized value $m1 in concatenation (.) or string at - line 10.
+Use of uninitialized value $g1 in concatenation (.) or string at - line 10.
 ########
 use warnings 'uninitialized';
 my ($m1);
@@ -759,6 +759,22 @@ Use of uninitialized value $m1 in scalar assignment at - line 5.
 ########
 use warnings 'uninitialized';
 my ($m1);
+our ($g1);
+
+$v = pos($m1) + 1;
+$v = pos($g1) + 1;
+$m1 = 0;
+$g1 = "";
+$v = pos($m1) + 1;
+$v = pos($g1) + 1;
+EXPECT
+Use of uninitialized value in addition (+) at - line 5.
+Use of uninitialized value in addition (+) at - line 6.
+Use of uninitialized value in addition (+) at - line 9.
+Use of uninitialized value in addition (+) at - line 10.
+########
+use warnings 'uninitialized';
+my ($m1);
 
 { my $x = "a" x $m1 }          # NB LHS of repeat does not warn
 { my @x = ("a") x $m1 }
@@ -873,11 +889,11 @@ Use of uninitialized value $m2 in index at - line 14.
 Use of uninitialized value $g1 in index at - line 15.
 Use of uninitialized value $m1 in index at - line 15.
 Use of uninitialized value $m2 in index at - line 15.
-Use of uninitialized value $m2 in rindex at - line 16.
 Use of uninitialized value $m1 in rindex at - line 16.
+Use of uninitialized value $m2 in rindex at - line 16.
 Use of uninitialized value $g1 in rindex at - line 17.
-Use of uninitialized value $m2 in rindex at - line 17.
 Use of uninitialized value $m1 in rindex at - line 17.
+Use of uninitialized value $m2 in rindex at - line 17.
 ########
 use warnings 'uninitialized';
 my ($m1, $v);
@@ -885,8 +901,7 @@ our ($g1);
 
 $v = sprintf $m1;
 $v = sprintf '%d%d%d%d', $m1, $m2, $g1, $g2;
-my $m3;
-eval {formline $m3 };
+my $m3; eval {formline $m3 };
 formline '@<<@<<@<<@<<', $m1, $m2, $g1, $g2;
 EXPECT
 Use of uninitialized value $m1 in sprintf at - line 5.
@@ -894,7 +909,7 @@ Use of uninitialized value $m1 in sprintf at - line 6.
 Use of uninitialized value $m2 in sprintf at - line 6.
 Use of uninitialized value $g1 in sprintf at - line 6.
 Use of uninitialized value $g2 in sprintf at - line 6.
-Use of uninitialized value $m1 in formline at - line 7.
+Use of uninitialized value $m3 in formline at - line 7.
 Use of uninitialized value $m1 in formline at - line 8.
 Use of uninitialized value $m2 in formline at - line 8.
 Use of uninitialized value $g1 in formline at - line 8.
@@ -1018,7 +1033,7 @@ my ($v);
 my %h = ("\0011\002\r\n\t\f\"\\abcdefghijklmnopqrstuvwxyz", undef);
 $v = join '', %h;
 EXPECT
-Use of uninitialized value $h{"\0011\2\r\n\t\f\"\\abcdefghijkl"...} in join or string at - line 6.
+Use of uninitialized value $h{"\0011\2\r\n\t\f\"\\abcdefghijklm"...} in join or string at - line 6.
 ########
 use warnings 'uninitialized';
 my ($m1, $v);
@@ -1163,11 +1178,10 @@ our ($g1);
 
 eval { my $x; seek    $x,$m1, $g1 };
 eval { my $x; sysseek $x,$m1, $g1 };
-eval { syswrite $m1, $g1 };
+eval { syswrite $m1, $g1 }; # logic changed - now won't try $g1 if $m1 is bad
 # eval { syswrite STDERR, $m1 };        # XXX under utf8, can give
 # eval { syswrite STDERR, $m1, $g1 };   # XXX different warnings
 # eval { syswrite STDERR, $m1, $g1, $m2 };
-eval { my $x; flock $x, $g1 };
 eval { my $x; socket $x, $m1, $g1, $m2 };
 eval { my ($x,$y); socketpair $x, $y, $m1, $g1, $m2 };
 EXPECT
@@ -1178,15 +1192,32 @@ Use of uninitialized value $x in ref-to-glob cast at - line 6.
 Use of uninitialized value $g1 in sysseek at - line 6.
 Use of uninitialized value $m1 in sysseek at - line 6.
 Use of uninitialized value $m1 in ref-to-glob cast at - line 7.
-Use of uninitialized value $g1 in syswrite at - line 7.
-Use of uninitialized value $x in ref-to-glob cast at - line 11.
-Use of uninitialized value $g1 in flock at - line 11.
-Use of uninitialized value $m2 in socket at - line 12.
-Use of uninitialized value $g1 in socket at - line 12.
-Use of uninitialized value $m1 in socket at - line 12.
-Use of uninitialized value $m2 in socketpair at - line 13.
-Use of uninitialized value $g1 in socketpair at - line 13.
-Use of uninitialized value $m1 in socketpair at - line 13.
+Use of uninitialized value $m2 in socket at - line 11.
+Use of uninitialized value $g1 in socket at - line 11.
+Use of uninitialized value $m1 in socket at - line 11.
+Use of uninitialized value $m2 in socketpair at - line 12.
+Use of uninitialized value $g1 in socketpair at - line 12.
+Use of uninitialized value $m1 in socketpair at - line 12.
+########
+use Config; 
+BEGIN { 
+  if ( !$Config{d_flock} &&
+       !$Config{d_fcntl_can_lock} &&
+       !$Config{d_lockf} ) {
+    print <<EOM ;
+SKIPPED
+# flock not present
+EOM
+    exit ;
+  } 
+}
+use warnings 'uninitialized';
+our ($g1);
+
+eval { my $x; flock $x, $g1 };
+EXPECT
+Use of uninitialized value $x in ref-to-glob cast at - line 16.
+Use of uninitialized value $g1 in flock at - line 16.
 ########
 use warnings 'uninitialized';
 my ($m1, $v);
@@ -1204,8 +1235,8 @@ $v = -r $m1;
 $v = -w $m1;
 $v = -x $m1;
 $v = -e $m1;
-$v = -O $m1;
 $v = -o $m1;
+$v = -O $m1;
 $v = -z $m1;
 $v = -s $m1;
 $v = -M $m1;
@@ -1274,10 +1305,6 @@ $v = eval;
 $v = eval $m1;
 EXPECT
 Use of uninitialized value $_ in eval "string" at - line 4.
-Use of uninitialized value $_ in eval "string" at - line 4.
-Use of uninitialized value $_ in eval "string" at - line 4.
-Use of uninitialized value $m1 in eval "string" at - line 5.
-Use of uninitialized value $m1 in eval "string" at - line 5.
 Use of uninitialized value $m1 in eval "string" at - line 5.
 ########
 use warnings 'uninitialized';