Go even further (back) than change #18608 and revert
Jarkko Hietaniemi [Fri, 31 Jan 2003 08:58:40 +0000 (08:58 +0000)]
to the 5.8.0 code, since otherwise split.t #40 fails.
The four new tests of pat.t should keep us more honest.
p4raw-link: @18608 on //depot/perl: 5dec093fd414e8adffdf65a1d75b0b0d7a2938c3

p4raw-id: //depot/perl@18609

regexec.c

index ee53a47..157f426 100644 (file)
--- a/regexec.c
+++ b/regexec.c
@@ -97,7 +97,6 @@
 #endif
 
 #define REGINCLASS(p,c)  (ANYOF_FLAGS(p) ? reginclass(p,c,0,0) : ANYOF_BITMAP_TEST(p,*(c)))
-#define REGINCLASS_utf8(p,c)  (ANYOF_FLAGS(p) ? reginclass(p,c,0,1) : ANYOF_BITMAP_TEST(p,*(c)))
 
 /*
  * Forwards.
@@ -4078,9 +4077,8 @@ S_regrepeat(pTHX_ regnode *p, I32 max)
     case ANYOF:
        if (do_utf8) {
            loceol = PL_regeol;
-           while (hardcount < max && scan < loceol) {
-               if (!REGINCLASS_utf8(p, (U8*)scan))
-                       break;
+           while (hardcount < max && scan < loceol &&
+                  reginclass(p, (U8*)scan, 0, do_utf8)) {
                scan += UTF8SKIP(scan);
                hardcount++;
            }