-ANYOF ANYOF, sv 0 S ; Match character in (or not in) this class.
-ALNUM ALNUM, no 0 S ; Match any alphanumeric character
-ALNUML ALNUM, no 0 S ; Match any alphanumeric char in locale
-NALNUM NALNUM, no 0 S ; Match any non-alphanumeric character
-NALNUML NALNUM, no 0 S ; Match any non-alphanumeric char in locale
-SPACE SPACE, no 0 S ; Match any whitespace character
-SPACEL SPACE, no 0 S ; Match any whitespace char in locale
-NSPACE NSPACE, no 0 S ; Match any non-whitespace character
-NSPACEL NSPACE, no 0 S ; Match any non-whitespace char in locale
-DIGIT DIGIT, no 0 S ; Match any numeric character
-DIGITL DIGIT, no ; Match any numeric character in locale
-NDIGIT NDIGIT, no 0 S ; Match any non-numeric character
-NDIGITL NDIGIT, no ; Match any non-numeric character in locale
-CLUMP CLUMP, no 0 V ; Match any combining character sequence
-
-#* Alternation (31)
-
-# BRANCH The set of branches constituting a single choice are hooked
-# together with their "next" pointers, since precedence prevents
-# anything being concatenated to any individual branch. The
-# "next" pointer of the last BRANCH in a choice points to the
-# thing following the whole choice. This is also where the
-# final "next" pointer of each individual branch points; each
-# branch starts with the operand node of a BRANCH node.
-#
+ANYOF ANYOF, sv 0 S ; Match character in (or not in) this class, single char match only
+ANYOF_WARN_SUPER ANYOF, sv 0 S ; Match character in (or not in) this class, warn (if enabled) upon matching a char above Unicode max;
+ANYOF_SYNTHETIC ANYOF, sv 0 S ; Synthetic start class
+
+# Order of the below is important. See ordering comment above.
+POSIXD POSIXD, none 0 S ; Some [[:class:]] under /d; the FLAGS field gives which one
+POSIXL POSIXD, none 0 S ; Some [[:class:]] under /l; the FLAGS field gives which one
+POSIXU POSIXD, none 0 S ; Some [[:class:]] under /u; the FLAGS field gives which one
+POSIXA POSIXD, none 0 S ; Some [[:class:]] under /a; the FLAGS field gives which one
+NPOSIXD NPOSIXD, none 0 S ; complement of POSIXD, [[:^class:]]
+NPOSIXL NPOSIXD, none 0 S ; complement of POSIXL, [[:^class:]]
+NPOSIXU NPOSIXD, none 0 S ; complement of POSIXU, [[:^class:]]
+NPOSIXA NPOSIXD, none 0 S ; complement of POSIXA, [[:^class:]]
+# End of order is important
+
+CLUMP CLUMP, no 0 V ; Match any extended grapheme cluster sequence
+
+#* Alternation
+
+#* BRANCH The set of branches constituting a single choice are
+#* hooked together with their "next" pointers, since
+#* precedence prevents anything being concatenated to
+#* any individual branch. The "next" pointer of the last
+#* BRANCH in a choice points to the thing following the
+#* whole choice. This is also where the final "next"
+#* pointer of each individual branch points; each branch
+#* starts with the operand node of a BRANCH node.
+#*