updated for version 7.3.255
Problem:    When editing a file such as "File[2010-08-15].vim" an E16 error is
            given. (Manuel Stol)
Solution:   Don't give an error for failing to compile the regexp.
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 602bbfa..3e80b32 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -7069,7 +7069,7 @@
 	old_arg_count = GARGCOUNT;
 	if (expand_wildcards(old_arg_count, old_arg_files,
 		    &new_arg_file_count, &new_arg_files,
-		    EW_FILE|EW_NOTFOUND|EW_ADDSLASH) == OK
+		    EW_FILE|EW_NOTFOUND|EW_ADDSLASH|EW_NOERROR) == OK
 		&& new_arg_file_count > 0)
 	{
 	    alist_set(&global_alist, new_arg_file_count, new_arg_files,
diff --git a/src/misc1.c b/src/misc1.c
index c7f2f80..a573b3b 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -9043,8 +9043,12 @@
     }
 
     /* compile the regexp into a program */
+    if (flags & EW_NOERROR)
+	++emsg_silent;
     regmatch.rm_ic = TRUE;		/* Always ignore case */
     regmatch.regprog = vim_regcomp(pat, RE_MAGIC);
+    if (flags & EW_NOERROR)
+	--emsg_silent;
     vim_free(pat);
 
     if (regmatch.regprog == NULL)
diff --git a/src/version.c b/src/version.c
index 276bccb..2f2307f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -710,6 +710,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    255,
+/**/
     254,
 /**/
     253,
diff --git a/src/vim.h b/src/vim.h
index a51834f..a1a9708 100644
--- a/src/vim.h
+++ b/src/vim.h
@@ -815,6 +815,7 @@
 #define EW_EXEC		0x40	/* executable files */
 #define EW_PATH		0x80	/* search in 'path' too */
 #define EW_ICASE	0x100	/* ignore case */
+#define EW_NOERROR	0x200	/* no error for bad regexp */
 /* Note: mostly EW_NOTFOUND and EW_SILENT are mutually exclusive: EW_NOTFOUND
  * is used when executing commands and EW_SILENT for interactive expanding. */