updated for version 7.0g04
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 71ba6d6..f995253 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -2962,6 +2962,7 @@
     int		full = FALSE;
     int		i;
     int		j;
+    char_u	*p;
     static struct cmdmod
     {
 	char	*name;
@@ -3001,10 +3002,13 @@
      * For ":2match" and ":3match" we need to skip the number. */
     ea.cmd = (*name == '2' || *name == '3') ? name + 1 : name;
     ea.cmdidx = (cmdidx_T)0;
-    if (find_command(&ea, &full) == NULL)
+    p = find_command(&ea, &full);
+    if (p == NULL)
 	return 3;
     if (vim_isdigit(*name) && ea.cmdidx != CMD_match)
 	return 0;
+    if (*skipwhite(p) != NUL)
+	return 0;	/* trailing garbage */
     return (ea.cmdidx == CMD_SIZE ? 0 : (full ? 2 : 1));
 }
 #endif
@@ -9884,7 +9888,7 @@
      */
     if (put_line(fd, "if exists('s:wipebuf')") == FAIL)
 	return FAIL;
-    if (put_line(fd, "  exe 'bwipe ' . s:wipebuf") == FAIL)
+    if (put_line(fd, "  silent exe 'bwipe ' . s:wipebuf") == FAIL)
 	return FAIL;
     if (put_line(fd, "endif") == FAIL)
 	return FAIL;
diff --git a/src/spell.c b/src/spell.c
index 757efc6..e22e428 100644
--- a/src/spell.c
+++ b/src/spell.c
@@ -15656,8 +15656,7 @@
 		    ? MB_STRNICMP(p, pat, STRLEN(pat)) == 0
 		    : STRNCMP(p, pat, STRLEN(pat)) == 0)
 		&& ins_compl_add_infercase(p, (int)STRLEN(p),
-					  dumpflags & DUMPFLAG_ICASE,
-					  NULL, *dir, 0) == OK)
+					  FALSE, NULL, *dir, 0) == OK)
 	/* if dir was BACKWARD then honor it just once */
 	*dir = FORWARD;
 }
diff --git a/src/testdir/test60.ok b/src/testdir/test60.ok
index 46a72e4..10dc579 100644
--- a/src/testdir/test60.ok
+++ b/src/testdir/test60.ok
@@ -1,6 +1,8 @@
 
 #myagroup: 1
 OK
+#myagroup+b: 0
+OK
 #myagroup#BufEnter: 1
 OK
 #myagroup#BufEnter#*.my: 1
@@ -33,6 +35,8 @@
 OK
 &tw: 1
 OK
+&tw-: 0
+OK
 &g:errorformat: 1
 OK
 &l:errorformat: 1
@@ -45,6 +49,8 @@
 OK
 +incsearch: 1
 OK
++incsearch!1: 0
+OK
 +is: 1
 OK
 +autoprint: 0
@@ -55,14 +61,20 @@
 OK
 *bufnr: 1
 OK
+*bufnr(): 1
+OK
 *myxyzfunc: 0
 OK
+*bufnr&6: 0
+OK
 *TestExists: 1
 OK
 *MyxyzFunc: 0
 OK
 :edit: 2
 OK
+:edit/a: 0
+OK
 :q: 1
 OK
 :invalidcmd: 0
@@ -79,10 +91,18 @@
 OK
 local_var: 1
 OK
+local_var%n: 0
+OK
 local_var: 0
 OK
 local_list: 1
 OK
+local_list[1]: 1
+OK
+local_list[1]+5: 0
+OK
+local_list[2]: 0
+OK
 local_list: 0
 OK
 local_dict: 1
@@ -95,6 +115,8 @@
 OK
 g:global_var: 1
 OK
+g:global_var-n: 1
+OK
 g:global_var: 0
 OK
 g:global_list: 1