Problem: In the new regexp engine \p does not work on multi-byte
characters.
Solution: Don't point to an integer but the characters.
}
if (c == NUL)
n = 0;
- cc = (char_u *)&c;
+ cc = reginput;
/* swap lists */
thislist = &list[flag];
if (neglist->n > 0)
{
t = &neglist->t[0];
- neglist->n --;
+ neglist->n--;
i--;
}
else
:call add(tl, [' [^ ]\+', 'start มabcdม ', ' มabcdม'])
:call add(tl, ['[ม[:alpha:][=a=]]\+', '879 aiaãมâมaiuvna ', 'aiaãมâมaiuvna'])
+:" this is not a normal "i" but 0xec
+:call add(tl, ['\p\+', 'ìa', 'ìa'])
+
:"""" Run the tests
:"
OK - [^ม ]\+
OK - [^ ]\+
OK - [ม[:alpha:][=a=]]\+
+OK - \p\+
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 982,
/**/
981,
/**/