changeset 4815:6419ee8098c8 v7.3.1154

updated for version 7.3.1154 Problem: New regexp_nfa engine: Uneccessary code. Solution: Remove uneccessary code.
author Bram Moolenaar <bram@vim.org>
date Sun, 09 Jun 2013 17:25:34 +0200
parents fd09a5342efd
children 7dc82366bd46
files src/regexp_nfa.c src/version.c
diffstat 2 files changed, 11 insertions(+), 10 deletions(-) [+]
line wrap: on
line diff
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -3795,14 +3795,8 @@ addstate(l, state, subs, pim, off)
     int			did_print = FALSE;
 #endif
 
-    if (l == NULL || state == NULL)
-	return;
-
     switch (state->c)
     {
-	case NFA_SPLIT:
-	case NFA_NOPEN:
-	case NFA_SKIP_CHAR:
 	case NFA_NCLOSE:
 	case NFA_MCLOSE:
 	case NFA_MCLOSE1:
@@ -3827,6 +3821,9 @@ addstate(l, state, subs, pim, off)
 	case NFA_ZCLOSE9:
 #endif
 	case NFA_ZEND:
+	case NFA_SPLIT:
+	case NFA_NOPEN:
+	case NFA_SKIP_CHAR:
 	    /* These nodes are not added themselves but their "out" and/or
 	     * "out1" may be added below.  */
 	    break;
@@ -3889,12 +3886,14 @@ skip_add:
 		    return;
 		}
 
+		/* Do not add the state again when it exists with the same
+		 * positions. */
 		if (has_state_with_pos(l, state, subs))
 		    goto skip_add;
 	    }
 
-	    /* when there are backreferences or look-behind matches the number
-	     * of states may be (a lot) bigger */
+	    /* When there are backreferences the number of states may be (a
+	     * lot) bigger than anticipated. */
 	    if (nfa_has_backref && l->n == l->len)
 	    {
 		int newlen = l->len * 3 / 2 + 50;
@@ -3985,8 +3984,8 @@ skip_add:
 		sub = &subs->norm;
 	    }
 
-	    /* Set the position (with "off") in the subexpression.  Save and
-	     * restore it when it was in use.  Otherwise fill any gap. */
+	    /* Set the position (with "off" added) in the subexpression.  Save
+	     * and restore it when it was in use.  Otherwise fill any gap. */
 	    save_ptr = NULL;
 	    if (REG_MULTI)
 	    {
--- a/src/version.c
+++ b/src/version.c
@@ -729,6 +729,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1154,
+/**/
     1153,
 /**/
     1152,