updated for version 7.4.290
Problem: A non-greedy match followed by a branch is too greedy. (Ingo
Karkat)
Solution: Add NFA_MATCH when it is already in the state list if the position
differs.
diff --git a/src/testdir/test64.ok b/src/testdir/test64.ok
index 9fb6c60..e7d1731 100644
--- a/src/testdir/test64.ok
+++ b/src/testdir/test64.ok
@@ -533,6 +533,18 @@
OK 0 - \v(a{-1,3})+
OK 1 - \v(a{-1,3})+
OK 2 - \v(a{-1,3})+
+OK 0 - ^\s\{-}\zs\( x\|x$\)
+OK 1 - ^\s\{-}\zs\( x\|x$\)
+OK 2 - ^\s\{-}\zs\( x\|x$\)
+OK 0 - ^\s\{-}\zs\(x\| x$\)
+OK 1 - ^\s\{-}\zs\(x\| x$\)
+OK 2 - ^\s\{-}\zs\(x\| x$\)
+OK 0 - ^\s\{-}\ze\(x\| x$\)
+OK 1 - ^\s\{-}\ze\(x\| x$\)
+OK 2 - ^\s\{-}\ze\(x\| x$\)
+OK 0 - ^\(\s\{-}\)\(x\| x$\)
+OK 1 - ^\(\s\{-}\)\(x\| x$\)
+OK 2 - ^\(\s\{-}\)\(x\| x$\)
OK 0 - \d\+e\d\d
OK 1 - \d\+e\d\d
OK 2 - \d\+e\d\d