ANYOFD ANYOF, sv charclass S ; Like ANYOF, but /d is in effect
ANYOFL ANYOF, sv charclass S ; Like ANYOF, but /l is in effect
ANYOFPOSIXL ANYOF, sv charclass_posixl S ; Like ANYOFL, but matches [[:posix:]] classes
-ANYOFH ANYOF, sv 1 S ; Like ANYOF, but only has "High" matches, none in the bitmap
+ANYOFH ANYOF, sv 1 S ; Like ANYOF, but only has "High" matches, none in the bitmap;
+ANYOFHb ANYOF, sv 1 S ; Like ANYOFH, but all matches share the same first byte, the repurposed flags field contains it
ANYOFM ANYOFM byte 1 S ; Like ANYOF, but matches an invariant byte as determined by the mask and arg
NANYOFM ANYOFM byte 1 S ; complement of ANYOFM
EXACT_ONLY8 EXACT, str ; Like EXACT, but only UTF-8 encoded targets can match
EXACTFU_ONLY8 EXACT, str ; Like EXACTFU, but only UTF-8 encoded targets can match
-# One could add EXACTFAA8 and and something that has the same effect for /l,
+# One could add EXACTFAA8 and something that has the same effect for /l,
# but these would be extremely uncommon
EXACTFU_S_EDGE EXACT, str ; /di rules, but nothing in it precludes /ui, except begins and/or ends with [Ss]; (string not UTF-8; compile-time only).
#*Named references. Code in regcomp.c assumes that these all are after
#*the numbered references
-NREF REF, no-sv 1 V ; Match some already matched string
-NREFF REF, no-sv 1 V ; Match already matched string, using /di rules.
-NREFFL REF, no-sv 1 V ; Match already matched string, using /li rules.
-NREFFU REF, num 1 V ; Match already matched string, using /ui rules.
-NREFFA REF, num 1 V ; Match already matched string, using /aai rules.
+REFN REF, no-sv 1 V ; Match some already matched string
+REFFN REF, no-sv 1 V ; Match already matched string, using /di rules.
+REFFLN REF, no-sv 1 V ; Match already matched string, using /li rules.
+REFFUN REF, num 1 V ; Match already matched string, using /ui rules.
+REFFAN REF, num 1 V ; Match already matched string, using /aai rules.
#*Support for long RE
LONGJMP LONGJMP, off 1 . 1 ; Jump far away.
BRANCHJ BRANCHJ, off 1 V 1 ; BRANCH with long offset.
#*Special Case Regops
-IFMATCH BRANCHJ, off 1 . 1 ; Succeeds if the following matches; non-zero flags "f" means lookbehind assertion starting "f" characters before current
-UNLESSM BRANCHJ, off 1 . 1 ; Fails if the following matches; non-zero flags "f" means lookbehind assertion starting "f" characters before current
+IFMATCH BRANCHJ, off 1 . 1 ; Succeeds if the following matches; non-zero flags "f", next_off "o" means lookbehind assertion starting "f..(f-o)" characters before current
+UNLESSM BRANCHJ, off 1 . 1 ; Fails if the following matches; non-zero flags "f", next_off "o" means lookbehind assertion starting "f..(f-o)" characters before current
SUSPEND BRANCHJ, off 1 V 1 ; "Independent" sub-RE.
IFTHEN BRANCHJ, off 1 V 1 ; Switch, should be preceded by switcher.
GROUPP GROUPP, num 1 ; Whether the group matched.
GOSUB GOSUB, num/ofs 2L ; recurse to paren arg1 at (signed) ofs arg2
#*Special conditionals
-NGROUPP NGROUPP, no-sv 1 ; Whether the group matched.
+GROUPPN GROUPPN, no-sv 1 ; Whether the group matched.
INSUBP INSUBP, num 1 ; Whether we are in a specific recurse.
DEFINEP DEFINEP, none 1 ; Never execute directly.