summaryrefslogtreecommitdiff
path: root/regcomp.c
diff options
context:
space:
mode:
authorInaba Hiroto <inaba@st.rim.or.jp>2001-01-09 10:04:32 +0900
committerJarkko Hietaniemi <jhi@iki.fi>2001-01-09 15:05:32 +0000
commit9b877dbba0196ef7d4c6e2b0fcfc6e6f4955d526 (patch)
treefd5d6ece1cff64d01e3ac0878ac10db3e006f5a5 /regcomp.c
parent238af31e4e26cc72128680a0ed0480b2b2c76175 (diff)
downloadperl-9b877dbba0196ef7d4c6e2b0fcfc6e6f4955d526.tar.gz
One more patch for UTF8
Message-ID: <3A59E510.52BAB5B9@st.rim.or.jp> UTF-8 fixes for 'x' and tr///. p4raw-id: //depot/perl@8378
Diffstat (limited to 'regcomp.c')
-rw-r--r--regcomp.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/regcomp.c b/regcomp.c
index 19d8e8ee77..c85eb5e123 100644
--- a/regcomp.c
+++ b/regcomp.c
@@ -845,11 +845,15 @@ S_study_chunk(pTHX_ RExC_state_t *pRExC_state, regnode **scanp, I32 *deltap, reg
if (compat)
ANYOF_BITMAP_SET(data->start_class, uc);
data->start_class->flags &= ~ANYOF_EOS;
+ if (uc < 0x100)
+ data->start_class->flags &= ~ANYOF_UNICODE_ALL;
}
else if (flags & SCF_DO_STCLASS_OR) {
/* false positive possible if the class is case-folded */
if (uc < 0x100)
- ANYOF_BITMAP_SET(data->start_class, uc);
+ ANYOF_BITMAP_SET(data->start_class, uc);
+ else
+ data->start_class->flags |= ANYOF_UNICODE_ALL;
data->start_class->flags &= ~ANYOF_EOS;
cl_and(data->start_class, &and_with);
}