diff options
author | Nicholas Clark <nick@ccl4.org> | 2011-06-16 22:31:07 +0200 |
---|---|---|
committer | Nicholas Clark <nick@ccl4.org> | 2011-06-23 15:07:18 +0200 |
commit | 134b8cd8023b245ceceb96a0cb1a255bd3400f27 (patch) | |
tree | d25f659e6fe4b6c0f21fc54135d460ffce7313fb /pp_ctl.c | |
parent | bfafcb9a4c258bd72d8c22f5d8af5edc8897f48e (diff) | |
download | perl-134b8cd8023b245ceceb96a0cb1a255bd3400f27.tar.gz |
Test studied scalars with s///ge.
Diffstat (limited to 'pp_ctl.c')
-rw-r--r-- | pp_ctl.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -298,6 +298,13 @@ PP(pp_substcont) s -= RX_GOFS(rx); /* Are we done */ + /* I believe that we can't set REXEC_SCREAM here if + SvSCREAM(cx->sb_targ) is true because SvPVX(cx->sb_targ) isn't always + equal to s. [See the comment before Perl_re_intuit_start(), which is + called from Perl_regexec_flags(), which says that it should be when + SvSCREAM() is true.] s, cx->sb_strend and orig will be consistent + with SvPVX(cx->sb_targ), as substconst doesn't modify cx->sb_targ + during the match. */ if (CxONCE(cx) || s < orig || !CALLREGEXEC(rx, s, cx->sb_strend, orig, (s == m) + RX_GOFS(rx), cx->sb_targ, NULL, |