test failures with MIME-tools-4.122 and perl 5.005_55
Hugo van der Sanden [Thu, 18 Feb 1999 18:51:38 +0000 (18:51 +0000)]
Message-Id: <199902181851.SAA14018@crypt.compulink.co.uk>

p4raw-id: //depot/perl@2991

pp_hot.c
t/op/pat.t

index b1bf270..3ab4f30 100644 (file)
--- a/pp_hot.c
+++ b/pp_hot.c
@@ -855,7 +855,7 @@ PP(pp_match)
     register char *s;
     char *strend;
     I32 global;
-    I32 r_flags;
+    I32 r_flags = 0;
     char *truebase;
     register REGEXP *rx = pm->op_pmregexp;
     bool rxtainted;
@@ -904,14 +904,18 @@ PP(pp_match)
            if (mg && mg->mg_len >= 0) {
                if (!(rx->reganch & ROPT_GPOS_SEEN))
                    rx->endp[0] = rx->startp[0] = s + mg->mg_len; 
+               else if (rx->reganch & ROPT_ANCH_GPOS) {
+                   r_flags |= REXEC_IGNOREPOS;
+                   rx->endp[0] = rx->startp[0] = s + mg->mg_len; 
+               }
                minmatch = (mg->mg_flags & MGf_MINMATCH);
                update_minmatch = 0;
            }
        }
     }
-    r_flags = ((gimme != G_ARRAY && !global && rx->nparens)
-               || SvTEMP(TARG) || PL_sawampersand)
-               ? REXEC_COPY_STR : 0;
+    if ((gimme != G_ARRAY && !global && rx->nparens)
+           || SvTEMP(TARG) || PL_sawampersand)
+       r_flags |= REXEC_COPY_STR;
     if (SvSCREAM(TARG) && rx->check_substr
        && SvTYPE(rx->check_substr) == SVt_PVBM
        && SvVALID(rx->check_substr)) 
index b2c0e05..b6a3a3a 100755 (executable)
@@ -4,7 +4,7 @@
 # the format supported by op/regexp.t.  If you want to add a test
 # that does fit that format, add it to op/re_tests, not here.
 
-print "1..185\n";
+print "1..186\n";
 
 BEGIN {
     chdir 't' if -d 't';
@@ -825,6 +825,10 @@ print "not " unless($1 eq 'de');
 print "ok $test\n";
 $test++;
 
+print "not " unless $foo =~ /\Gef/g;
+print "ok $test\n";
+$test++;
+
 undef pos $foo;
 
 $foo=~/\G(..)/g;