diff options
author | Jarkko Hietaniemi <jhi@iki.fi> | 2003-04-18 19:28:04 +0000 |
---|---|---|
committer | Jarkko Hietaniemi <jhi@iki.fi> | 2003-04-18 19:28:04 +0000 |
commit | 14ebb1a2c3090470663d3e2baaf3787edad7c9a7 (patch) | |
tree | ff0ed70dc937a0a7a4b6dd83f0f5b31cbc29ff03 /regcomp.c | |
parent | d60ecbe5204b1d5c06464db2b54d51236d8a45d0 (diff) | |
download | perl-14ebb1a2c3090470663d3e2baaf3787edad7c9a7.tar.gz |
UTF8 regexp patch from Inaba Hiroto.
p4raw-id: //depot/perl@19264
Diffstat (limited to 'regcomp.c')
-rw-r--r-- | regcomp.c | 9 |
1 files changed, 6 insertions, 3 deletions
@@ -576,14 +576,17 @@ S_cl_and(pTHX_ struct regnode_charclass_class *cl, if (!(and_with->flags & ANYOF_EOS)) cl->flags &= ~ANYOF_EOS; - if (cl->flags & ANYOF_UNICODE_ALL && and_with->flags & ANYOF_UNICODE) { + if (cl->flags & ANYOF_UNICODE_ALL && and_with->flags & ANYOF_UNICODE && + !(and_with->flags & ANYOF_INVERT)) { cl->flags &= ~ANYOF_UNICODE_ALL; cl->flags |= ANYOF_UNICODE; ARG_SET(cl, ARG(and_with)); } - if (!(and_with->flags & ANYOF_UNICODE_ALL)) + if (!(and_with->flags & ANYOF_UNICODE_ALL) && + !(and_with->flags & ANYOF_INVERT)) cl->flags &= ~ANYOF_UNICODE_ALL; - if (!(and_with->flags & (ANYOF_UNICODE|ANYOF_UNICODE_ALL))) + if (!(and_with->flags & (ANYOF_UNICODE|ANYOF_UNICODE_ALL)) && + !(and_with->flags & ANYOF_INVERT)) cl->flags &= ~ANYOF_UNICODE; } |