summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--op.c4
-rw-r--r--t/pod/find.t8
2 files changed, 8 insertions, 4 deletions
diff --git a/op.c b/op.c
index b9b7869240..72c0352708 100644
--- a/op.c
+++ b/op.c
@@ -3002,7 +3002,7 @@ Perl_pmruntime(pTHX_ OP *o, OP *expr, OP *repl)
p = SvPV(pat, plen);
pm->op_pmflags |= PMf_SKIPWHITE;
}
- if ((PL_hints & HINT_UTF8) || DO_UTF8(pat))
+ 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))
@@ -3010,7 +3010,7 @@ Perl_pmruntime(pTHX_ OP *o, OP *expr, OP *repl)
op_free(expr);
}
else {
- if (PL_hints & HINT_UTF8)
+ 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)
diff --git a/t/pod/find.t b/t/pod/find.t
index bb6e9ba205..1bac930f56 100644
--- a/t/pod/find.t
+++ b/t/pod/find.t
@@ -2,8 +2,12 @@
# Author: Marek Rouchal <marek@saftsack.fs.uni-bayreuth.de>
BEGIN {
- chdir 't' if -d 't';
- @INC = '../lib';
+ chdir 't' if -d 't';
+ # The ../../../../../lib is for finding lib/utf8.pm
+ # when running under all-utf8 settings (pod/find.t)
+ # does not directly require lib/utf8.pm but regular
+ # expressions will need that.
+ @INC = qw(../lib ../../../../../lib);
}
$| = 1;