summaryrefslogtreecommitdiff
path: root/regcomp.sym
diff options
context:
space:
mode:
authorKarl Williamson <khw@cpan.org>2020-02-17 11:24:19 -0700
committerKarl Williamson <khw@cpan.org>2020-02-19 18:18:40 -0700
commit86451f01babb7e6115c520111d32b1128dcc8f57 (patch)
tree3eb6740b2a8b4d9e8234f60a4e1c8d7e8e092d11 /regcomp.sym
parentf1f5d51d61d3b95058950a4835a9cadfd8f2ad28 (diff)
downloadperl-86451f01babb7e6115c520111d32b1128dcc8f57.tar.gz
regcomp.sym: Add new regnode type for (?[])
This new regnode is used to handle interpolated already-compiled regex sets inside outer regex sets. If it isn't present, it will mean that what appears to be a nested, interpolated set really isn't. I created a new regnode structure to hold a pointer. This has to be temporary as pointers can be invalidated. I thought of just having a regnode without a pointer as a marker, and using a parallel array to store the data, rather than creating a whole new regnode structure for just pointers, but parallel data structures can get out of sync, so this seemed best. This commit just sets up the regnode; a future commit will actually use it.
Diffstat (limited to 'regcomp.sym')
-rw-r--r--regcomp.sym2
1 files changed, 2 insertions, 0 deletions
diff --git a/regcomp.sym b/regcomp.sym
index 4b8670fa2c..7c0bf7a484 100644
--- a/regcomp.sym
+++ b/regcomp.sym
@@ -297,6 +297,8 @@ OPTIMIZED NOTHING, off ; Placeholder for dump.
#* mean "not seen anything to optimize yet".
PSEUDO PSEUDO, off ; Pseudo opcode for internal use.
+REGEX_SET REGEX_SET, depth p S ; Regex set, temporary node used in pre-optimization compilation
+
-------------------------------------------------------------------------------
# Format for second section:
# REGOP \t typelist [ \t typelist]