2022-cn.enc of Encode.pm
[p5sagit/p5-mst-13.2.git] / regcomp.h
index b9542c9..bbe3a41 100644 (file)
--- a/regcomp.h
+++ b/regcomp.h
@@ -309,7 +309,8 @@ struct regnode_charclass_class {    /* has [[:blah:]] classes */
 #define REG_SEEN_LOOKBEHIND     2
 #define REG_SEEN_GPOS           4
 #define REG_SEEN_EVAL           8
-#define REG_SEEN_SANY          16
+#define REG_SEEN_CANY          16
+#define REG_SEEN_SANY          REG_SEEN_CANY /* src bckwrd cmpt */
 
 START_EXTERN_C
 
@@ -331,7 +332,7 @@ EXTCONST U8 PL_varies[] = {
 EXTCONST U8 PL_simple[];
 #else
 EXTCONST U8 PL_simple[] = {
-    REG_ANY,   SANY,
+    REG_ANY,   SANY,   CANY,
     ANYOF,
     ALNUM,     ALNUML,
     NALNUM,    NALNUML,
@@ -350,6 +351,16 @@ typedef struct re_scream_pos_data_s
     I32 *scream_pos;           /* Internal iterator of scream. */
 } re_scream_pos_data;
 
+/* .what is a character array with one character for each member of .data
+ * The character describes the function of the corresponding .data item:
+ *   f - start-class data for regstclass optimization  
+ *   n - Root of op tree for (?{EVAL}) item
+ *   o - Start op for (?{EVAL}) item
+ *   p - Pad for (?{EVAL} item
+ *   s - swash for unicode-style character class
+ * 20010712 mjd@plover.com
+ * (Remember to update re_dup() and pregfree() if you add any items.)
+ */
 struct reg_data {
     U32 count;
     U8 *what;