summaryrefslogtreecommitdiff
path: root/regen
diff options
context:
space:
mode:
authorKarl Williamson <public@khwilliamson.com>2011-01-13 22:36:36 -0700
committerKarl Williamson <public@khwilliamson.com>2011-01-13 22:55:54 -0700
commitf56b6394f7cf57733135f56e4e4ac49abe9ac9cc (patch)
tree05ee69c096e75180133c560d589860919ad8bc89 /regen
parent8cb75cc8ea95e17623a8b9b08cd293630b48508d (diff)
downloadperl-f56b6394f7cf57733135f56e4e4ac49abe9ac9cc.tar.gz
regex: Use ANYOFV
This patch restructures the regex ANYOF code to generate ANYOFV nodes instead when there is a possibility that it could match more than one character. Note that this doesn't affect the optimizer, as it essentially ignores things that fit into this category. (But it means that the optimizer will no longer reject these when it shouldn't have.) The handling of the LATIN SHARP s is modified to correspond with this new node type. The initial handling of ANYOFV is placed in regexec.c. More analysis will come on that. But there was significant change to the part that handles matching multi-char strings. This has long been buggy, with it previously comparing a folded-version on one side with a non-folded version on the other. This patch fixes about 60% of the problems that my undelivered test suite gives for multi-char folds. But there are still 17K test failures left, so I'm still not delivering that. The TODOs that this fixes will be cleaned up in a later commit
Diffstat (limited to 'regen')
0 files changed, 0 insertions, 0 deletions