patch 8.0.0618: NFA regex engine handles [0-z] incorrectly

Problem:    NFA regex engine handles [0-z] incorrectly.
Solution:   Return at the right point. (James McCoy, closes #1703)
diff --git a/src/regexp_nfa.c b/src/regexp_nfa.c
index 120861a..c490acb 100644
--- a/src/regexp_nfa.c
+++ b/src/regexp_nfa.c
@@ -628,37 +628,39 @@
 			config |= CLASS_o9;
 			break;
 		    }
-		    else
 		    if (*(p + 2) == '7')
 		    {
 			config |= CLASS_o7;
 			break;
 		    }
+		    return FAIL;
+
 		case 'a':
 		    if (*(p + 2) == 'z')
 		    {
 			config |= CLASS_az;
 			break;
 		    }
-		    else
 		    if (*(p + 2) == 'f')
 		    {
 			config |= CLASS_af;
 			break;
 		    }
+		    return FAIL;
+
 		case 'A':
 		    if (*(p + 2) == 'Z')
 		    {
 			config |= CLASS_AZ;
 			break;
 		    }
-		    else
 		    if (*(p + 2) == 'F')
 		    {
 			config |= CLASS_AF;
 			break;
 		    }
-		/* FALLTHROUGH */
+		    return FAIL;
+
 		default:
 		    return FAIL;
 	    }
diff --git a/src/testdir/test36.in b/src/testdir/test36.in
index 5e8ce44..ea95ebb 100644
--- a/src/testdir/test36.in
+++ b/src/testdir/test36.in
Binary files differ
diff --git a/src/testdir/test36.ok b/src/testdir/test36.ok
index df21ed1..867833b 100644
--- a/src/testdir/test36.ok
+++ b/src/testdir/test36.ok
Binary files differ
diff --git a/src/version.c b/src/version.c
index 4fddbb9..fa8b538 100644
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    618,
+/**/
     617,
 /**/
     616,