memcpy has n o in it, as pinted ut by Sarathy.
[p5sagit/p5-mst-13.2.git] / t / pragma / warn / 4lint
index 87cd7dc..3f9a897 100644 (file)
@@ -4,19 +4,19 @@ __END__
 -W
 # lint: check compile time $^W is zapped
 BEGIN { $^W = 0 ;}
-$a = $b = 1 ;
-$a = 1 if $a EQ $b ;
+$a = 1 ;
+$a =+ 1 ;
 close STDIN ; print STDIN "abc" ;
 EXPECT
-Use of EQ is deprecated at - line 5.
-print on closed filehandle main::STDIN at - line 6.
+Reversed += operator at - line 5.
+print() on closed filehandle main::STDIN at - line 6.
 ########
 -W
 # lint: check runtime $^W is zapped
 $^W = 0 ;
 close STDIN ; print STDIN "abc" ;
 EXPECT
-print on closed filehandle main::STDIN at - line 4.
+print() on closed filehandle main::STDIN at - line 4.
 ########
 -W
 # lint: check runtime $^W is zapped
@@ -25,26 +25,26 @@ print on closed filehandle main::STDIN at - line 4.
   close STDIN ; print STDIN "abc" ;
 }
 EXPECT
-print on closed filehandle main::STDIN at - line 5.
+print() on closed filehandle main::STDIN at - line 5.
 ########
 -W
-# lint: check "no warning" is zapped
-no warning ;
-$a = $b = 1 ;
-$a = 1 if $a EQ $b ;
+# lint: check "no warnings" is zapped
+no warnings ;
+$a = 1 ;
+$a =+ 1 ;
 close STDIN ; print STDIN "abc" ;
 EXPECT
-Use of EQ is deprecated at - line 5.
-print on closed filehandle main::STDIN at - line 6.
+Reversed += operator at - line 5.
+print() on closed filehandle main::STDIN at - line 6.
 ########
 -W
-# lint: check "no warning" is zapped
+# lint: check "no warnings" is zapped
 {
-  no warning ;
+  no warnings ;
   close STDIN ; print STDIN "abc" ;
 }
 EXPECT
-print on closed filehandle main::STDIN at - line 5.
+print() on closed filehandle main::STDIN at - line 5.
 ########
 -Ww
 # lint: check combination of -w and -W
@@ -53,60 +53,164 @@ print on closed filehandle main::STDIN at - line 5.
   close STDIN ; print STDIN "abc" ;
 }
 EXPECT
-print on closed filehandle main::STDIN at - line 5.
+print() on closed filehandle main::STDIN at - line 5.
 ########
 -W
 --FILE-- abc.pm
-no warning 'deprecated' ;
-my ($a, $b) = (0,0);
-1 if $a EQ $b ;
+no warnings 'syntax' ;
+my $a = 0;
+$a =+ 1 ;
 1;
 --FILE-- 
-no warning 'uninitialized' ;
+no warnings 'uninitialized' ;
 use abc;
 my $a ; chop $a ;
 EXPECT
-Use of EQ is deprecated at abc.pm line 3.
-Use of uninitialized value at - line 3.
+Reversed += operator at abc.pm line 3.
+Use of uninitialized value in scalar chop at - line 3.
 ########
 -W
 --FILE-- abc
-no warning 'deprecated' ;
-my ($a, $b) = (0,0);
-1 if $a EQ $b ;
+no warnings 'syntax' ;
+my $a = 0;
+$a =+ 1 ;
 1;
 --FILE-- 
-no warning 'uninitialized' ;
+no warnings 'uninitialized' ;
 require "./abc";
 my $a ; chop $a ;
 EXPECT
-Use of EQ is deprecated at ./abc line 3.
-Use of uninitialized value at - line 3.
+Reversed += operator at ./abc line 3.
+Use of uninitialized value in scalar chop at - line 3.
 ########
 -W
 --FILE-- abc.pm
 BEGIN {$^W = 0}
-my ($a, $b) = (0,0);
-1 if $a EQ $b ;
+my $a = 0 ;
+$a =+ 1 ;
 1;
 --FILE-- 
 $^W = 0 ;
 use abc;
 my $a ; chop $a ;
 EXPECT
-Use of EQ is deprecated at abc.pm line 3.
-Use of uninitialized value at - line 3.
+Reversed += operator at abc.pm line 3.
+Use of uninitialized value in scalar chop at - line 3.
 ########
 -W
 --FILE-- abc
 BEGIN {$^W = 0}
-my ($a, $b) = (0,0);
-1 if $a EQ $b ;
+my $a = 0 ;
+$a =+ 1 ;
 1;
 --FILE-- 
 $^W = 0 ;
 require "./abc";
 my $a ; chop $a ;
 EXPECT
-Use of EQ is deprecated at ./abc line 3.
-Use of uninitialized value at - line 3.
+Reversed += operator at ./abc line 3.
+Use of uninitialized value in scalar chop at - line 3.
+########
+-W
+# Check scope of pragma with eval
+{
+    no warnings ;
+    eval '
+        my $b ; chop $b ;
+    '; print STDERR $@ ;
+    my $b ; chop $b ;
+}
+EXPECT
+Use of uninitialized value in scalar chop at (eval 1) line 2.
+Use of uninitialized value in scalar chop at - line 8.
+########
+-W
+# Check scope of pragma with eval
+use warnings;
+{
+    no warnings ;
+    eval q[ 
+        use warnings 'uninitialized' ;
+        my $b ; chop $b ;
+    ]; print STDERR $@;
+    my $b ; chop $b ;
+}
+EXPECT
+Use of uninitialized value in scalar chop at (eval 1) line 3.
+Use of uninitialized value in scalar chop at - line 10.
+########
+-W
+# Check scope of pragma with eval
+no warnings;
+{
+    use warnings 'uninitialized' ;
+    eval '
+        my $b ; chop $b ;
+    '; print STDERR $@ ;
+    my $b ; chop $b ;
+}
+EXPECT
+Use of uninitialized value in scalar chop at (eval 1) line 2.
+Use of uninitialized value in scalar chop at - line 9.
+########
+-W
+# Check scope of pragma with eval
+no warnings;
+{
+    use warnings 'uninitialized' ;
+    eval '
+        no warnings ;
+        my $b ; chop $b ;
+    '; print STDERR $@ ;
+    my $b ; chop $b ;
+}
+EXPECT
+Use of uninitialized value in scalar chop at (eval 1) line 3.
+Use of uninitialized value in scalar chop at - line 10.
+########
+-W
+# Check scope of pragma with eval
+use warnings;
+{
+    my $a = "1"; my $b = "2";
+    no warnings ;
+    eval q[ 
+        use warnings 'syntax' ;
+        $a =+ 1 ;
+    ]; print STDERR $@;
+    $a =+ 1 ;
+}
+EXPECT
+Reversed += operator at - line 11.
+Reversed += operator at (eval 1) line 3.
+########
+-W
+# Check scope of pragma with eval
+no warnings;
+{
+    my $a = "1"; my $b = "2";
+    use warnings 'syntax' ;
+    eval '
+        $a =+ 1 ;
+    '; print STDERR $@;
+    $a =+ 1 ;
+}
+EXPECT
+Reversed += operator at - line 10.
+Reversed += operator at (eval 1) line 2.
+########
+-W
+# Check scope of pragma with eval
+no warnings;
+{
+    my $a = "1"; my $b = "2";
+    use warnings 'syntax' ;
+    eval '
+        no warnings ;
+        $a =+ 1 ;
+    '; print STDERR $@;
+    $a =+ 1 ;
+}
+EXPECT
+Reversed += operator at - line 11.
+Reversed += operator at (eval 1) line 3.