summaryrefslogtreecommitdiff
path: root/pp_hot.c
diff options
context:
space:
mode:
authorNicholas Clark <nick@ccl4.org>2006-12-13 08:35:43 +0000
committerNicholas Clark <nick@ccl4.org>2006-12-13 08:35:43 +0000
commitcecf5685359d1599cf3a31ed49f95b583ac5f0da (patch)
treefb6fd87a6a2fee32cfe6034666d2314daacef5dc /pp_hot.c
parent670f3923755f0c152f1bbc2d0a205d2d07284748 (diff)
downloadperl-cecf5685359d1599cf3a31ed49f95b583ac5f0da.tar.gz
Eliminate PVBM. Store fast Boyer-Moore tables in PVGV.
Add the placeholder for new type, temporarily named BIND, for binding and aliasing in 6 on 5. p4raw-id: //depot/perl@29544
Diffstat (limited to 'pp_hot.c')
-rw-r--r--pp_hot.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/pp_hot.c b/pp_hot.c
index 0b03721090..9fe7c70e73 100644
--- a/pp_hot.c
+++ b/pp_hot.c
@@ -2120,7 +2120,8 @@ PP(pp_subst)
!is_cow &&
#endif
(SvREADONLY(TARG)
- || ( (SvTYPE(TARG) == SVt_PVGV || SvTYPE(TARG) > SVt_PVLV)
+ || ( ((SvTYPE(TARG) == SVt_PVGV && isGV_with_GP(TARG))
+ || SvTYPE(TARG) > SVt_PVLV)
&& !(SvTYPE(TARG) == SVt_PVGV && SvFAKE(TARG)))))
DIE(aTHX_ PL_no_modify);
PUTBACK;