More (less) regex/utf8 relics. (Toned down later in #11653.)
Jarkko Hietaniemi [Sun, 12 Aug 2001 21:08:06 +0000 (21:08 +0000)]
p4raw-id: //depot/perl@11651

op.c
op.h
pp_ctl.c
regcomp.c

diff --git a/op.c b/op.c
index 72c0352..f52ea29 100644 (file)
--- a/op.c
+++ b/op.c
@@ -3002,16 +3002,12 @@ Perl_pmruntime(pTHX_ OP *o, OP *expr, OP *repl)
            p = SvPV(pat, plen);
            pm->op_pmflags |= PMf_SKIPWHITE;
        }
-       if (DO_UTF8(pat))
-           pm->op_pmdynflags |= PMdf_UTF8;
        PM_SETRE(pm, CALLREGCOMP(aTHX_ p, p + plen, pm));
        if (strEQ("\\s+", PM_GETRE(pm)->precomp))
            pm->op_pmflags |= PMf_WHITE;
        op_free(expr);
     }
     else {
-       if (!IN_BYTES)
-           pm->op_pmdynflags |= PMdf_UTF8;
        if (pm->op_pmflags & PMf_KEEP || !(PL_hints & HINT_RE_EVAL))
            expr = newUNOP((!(PL_hints & HINT_RE_EVAL)
                            ? OP_REGCRESET
diff --git a/op.h b/op.h
index e92b1d8..af8280b 100644 (file)
--- a/op.h
+++ b/op.h
@@ -263,10 +263,6 @@ struct pmop {
 
 #define PMdf_USED      0x01            /* pm has been used once already */
 #define PMdf_TAINTED   0x02            /* pm compiled from tainted pattern */
-#define PMdf_UTF8      0x04            /* pm compiled from utf8 data */
-#define PMdf_DYN_UTF8  0x08
-
-#define PMdf_CMP_UTF8  (PMdf_UTF8|PMdf_DYN_UTF8)
 
 #define PMf_RETAINT    0x0001          /* taint $1 etc. if target tainted */
 #define PMf_ONCE       0x0002          /* use pattern only once per reset */
index 1605e21..8a187b0 100644 (file)
--- a/pp_ctl.c
+++ b/pp_ctl.c
@@ -121,16 +121,7 @@ PP(pp_regcomp)
                PL_reginterp_cnt = I32_MAX; /* Mark as safe.  */
 
            pm->op_pmflags = pm->op_pmpermflags;        /* reset case sensitivity */
-           if (DO_UTF8(tmpstr))
-               pm->op_pmdynflags |= PMdf_DYN_UTF8;
-           else {
-               pm->op_pmdynflags &= ~PMdf_DYN_UTF8;
-               if (pm->op_pmdynflags & PMdf_UTF8)
-                   t = (char*)bytes_to_utf8((U8*)t, &len);
-           }
            PM_SETRE(pm, CALLREGCOMP(aTHX_ t, t + len, pm));
-           if (!DO_UTF8(tmpstr) && (pm->op_pmdynflags & PMdf_UTF8))
-               Safefree(t);
            PL_reginterp_cnt = 0;       /* XXXX Be extra paranoid - needed
                                           inside tie/overload accessors.  */
        }
index 2e37633..2b9fbbb 100644 (file)
--- a/regcomp.c
+++ b/regcomp.c
@@ -1666,11 +1666,7 @@ Perl_pregcomp(pTHX_ char *exp, char *xend, PMOP *pm)
     if (exp == NULL)
        FAIL("NULL regexp argument");
 
-    /* XXXX This looks very suspicious... */
-    if (pm->op_pmdynflags & PMdf_CMP_UTF8)
-        RExC_utf8 = 1;
-    else
-        RExC_utf8 = 0;
+    RExC_utf8 = 0;
 
     RExC_precomp = exp;
     DEBUG_r(if (!PL_colorset) reginitcolors());