summaryrefslogtreecommitdiff
path: root/HACKING
diff options
context:
space:
mode:
authorph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2007-08-09 11:16:34 +0000
committerph10 <ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15>2007-08-09 11:16:34 +0000
commitb16e178b28a1f1a43d831648d8836a1de092339c (patch)
tree6cd890d9d04f695fc869f514e00530e135ea8fcb /HACKING
parent56f7881b1a4124ac28d095f39f0ece0d5561dd5c (diff)
downloadpcre-b16e178b28a1f1a43d831648d8836a1de092339c.tar.gz
Updating docs for release; fix heap-related bugs in pcre_exec shown up by
release testing. git-svn-id: svn://vcs.exim.org/pcre/code/trunk@212 2f5784b3-3f2a-0410-8824-cb99058d5e15
Diffstat (limited to 'HACKING')
-rw-r--r--HACKING19
1 files changed, 13 insertions, 6 deletions
diff --git a/HACKING b/HACKING
index 49bba8a..c946cd2 100644
--- a/HACKING
+++ b/HACKING
@@ -109,15 +109,15 @@ variable length. The first byte in an item is an opcode, and the length of the
item is either implicit in the opcode or contained in the data bytes that
follow it.
-In many cases below "two-byte" data values are specified. This is in fact just
-a default when the number is an offset within the compiled pattern. PCRE can be
+In many cases below LINK_SIZE data values are specified for offsets within the
+compiled pattern. The default value for LINK_SIZE is 2, but PCRE can be
compiled to use 3-byte or 4-byte values for these offsets (impairing the
performance). This is necessary only when patterns whose compiled length is
greater than 64K are going to be processed. In this description, we assume the
-"normal" compilation options. "Two-byte" data values that are counts (e.g. for
-quantifiers) are always just two bytes.
+"normal" compilation options. Data values that are counts (e.g. for
+quantifiers) are always just two bytes long.
-A list of all the opcodes follows:
+A list of the opcodes follows:
Opcodes with no following data
------------------------------
@@ -149,6 +149,13 @@ These items are all just one byte long
OP_EXTUNI match an extended Unicode character
OP_ANYNL match any Unicode newline sequence
+ OP_ACCEPT )
+ OP_COMMIT )
+ OP_FAIL ) These are Perl 5.10's "backtracking
+ OP_PRUNE ) control verbs".
+ OP_SKIP )
+ OP_THEN )
+
Repeating single characters
---------------------------
@@ -404,4 +411,4 @@ at compile time, and so does not cause anything to be put into the compiled
data.
Philip Hazel
-June 2007
+August 2007