This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Test perl #4289
[perl5.git] / t / re / pat_rt_report.t
index 262e8d3..d19d1df 100644 (file)
@@ -22,7 +22,7 @@ BEGIN {
 }
 
 
 }
 
 
-plan tests => 2527;  # Update this when adding/deleting tests.
+plan tests => 2530;  # Update this when adding/deleting tests.
 
 run_tests() unless caller;
 
 
 run_tests() unless caller;
 
@@ -1143,6 +1143,19 @@ EOP
         ok("blah blah" =~ /$pattern/, $message);
         ok("blah blah" =~ /(?:$pattern)h/, $message);
     }
         ok("blah blah" =~ /$pattern/, $message);
         ok("blah blah" =~ /(?:$pattern)h/, $message);
     }
+
+    {
+        # [perl #4289] First mention $& after a match
+        fresh_perl_is(
+            '$_ = "abc"; /b/g; $_ = "hello"; print eval q|$&|, "\n"',
+            "b\n", {}, '$& first mentioned after match');
+        fresh_perl_is(
+            '$_ = "abc"; /b/g; $_ = "hello"; print eval q|$`|, "\n"',
+            "a\n", {}, '$` first mentioned after match');
+        fresh_perl_is(
+            '$_ = "abc"; /b/g; $_ = "hello"; print eval q|$\'|,"\n"',
+            "c\n", {}, '$\' first mentioned after match');
+    }
 } # End of sub run_tests
 
 1;
 } # End of sub run_tests
 
 1;