diff options
author | Karl Williamson <public@khwilliamson.com> | 2012-12-27 13:15:46 -0700 |
---|---|---|
committer | Karl Williamson <public@khwilliamson.com> | 2012-12-28 10:38:56 -0700 |
commit | 9ffd0d410cf14367a8148fae2818e8e637e9ece4 (patch) | |
tree | 0eef232017cd630cb572ebc353a0ec2115ac62bc /regcomp.h | |
parent | 954a2af6addd8488c7883730be028bcdc14b202e (diff) | |
download | perl-9ffd0d410cf14367a8148fae2818e8e637e9ece4.tar.gz |
regcomp.h: Split two ANYOF flag bits
This essentially reverts 8b27d3db700fc2fce268e3d78e221a16ccaca2e8
and causes ANYOF nodes that are in locale but don't match things like \w
to have a smaller node size.
Diffstat (limited to 'regcomp.h')
-rw-r--r-- | regcomp.h | 10 |
1 files changed, 5 insertions, 5 deletions
@@ -307,8 +307,8 @@ struct regnode_charclass_class { #define ANYOF_NONBITMAP(node) (ARG(node) != ANYOF_NONBITMAP_EMPTY) /* Flags for node->flags of ANYOF. These are in short supply, so some games - * are done to share them, as described below. Already, the ANYOF_LOCALE and - * ANYOF_CLASS bits are shared, making a space penalty for all locale nodes. + * are done to share them, as described below. The ANYOF_LOCALE and + * ANYOF_CLASS bits could be shared, making a space penalty for all locale nodes. * An option would be to push them into new nodes. E.g. there could be an * ANYOF_LOCALE node that would be in place of the flag of the same name. But * there are better options. The UNICODE_ALL bit could be freed up by @@ -335,9 +335,9 @@ struct regnode_charclass_class { /* Set if this is a struct regnode_charclass_class vs a regnode_charclass. This * is used for runtime \d, \w, [:posix:], ..., which are used only in locale * and the optimizer's synthetic start class. Non-locale \d, etc are resolved - * at compile-time. Now shared with ANYOF_LOCALE, forcing all locale nodes to - * be large */ -#define ANYOF_CLASS ANYOF_LOCALE + * at compile-time. Could be shared with ANYOF_LOCALE, forcing all locale + * nodes to be large */ +#define ANYOF_CLASS 0x08 #define ANYOF_LARGE ANYOF_CLASS /* Same; name retained for back compat */ /* EOS, meaning that it can match an empty string too, is used for the |