diff --git a/runtime/syntax/synload.vim b/runtime/syntax/synload.vim
index f373161..728b653 100644
--- a/runtime/syntax/synload.vim
+++ b/runtime/syntax/synload.vim
@@ -37,7 +37,7 @@
     unlet b:current_syntax
   endif
 
-  let s = expand("<amatch>")
+  0verbose let s = expand("<amatch>")
   if s == "ON"
     " :set syntax=ON
     if &filetype == ""
diff --git a/runtime/syntax/syntax.vim b/runtime/syntax/syntax.vim
index f274d93..4cb0288 100644
--- a/runtime/syntax/syntax.vim
+++ b/runtime/syntax/syntax.vim
@@ -28,8 +28,9 @@
 
 " Set up the connection between FileType and Syntax autocommands.
 " This makes the syntax automatically set when the file type is detected.
+" Avoid an error when 'verbose' is set and <amatch> expansion fails.
 augroup syntaxset
-  au! FileType *	exe "set syntax=" . expand("<amatch>")
+  au! FileType *	0verbose exe "set syntax=" . expand("<amatch>")
 augroup END
 
 
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 42824d7..ceb500d 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -3084,7 +3084,11 @@
 			if (!checkforcmd_noparen(&p, "verbose", 4))
 			    break;
 			if (vim_isdigit(*eap->cmd))
+			{
 			    cmod->cmod_verbose = atoi((char *)eap->cmd);
+			    if (cmod->cmod_verbose == 0)
+				cmod->cmod_verbose = -1;
+			}
 			else
 			    cmod->cmod_verbose = 1;
 			eap->cmd = p;
@@ -3158,11 +3162,11 @@
 	cmod->cmod_did_sandbox = TRUE;
     }
 #endif
-    if (cmod->cmod_verbose > 0)
+    if (cmod->cmod_verbose != 0)
     {
 	if (cmod->cmod_verbose_save == 0)
 	    cmod->cmod_verbose_save = p_verbose + 1;
-	p_verbose = cmod->cmod_verbose;
+	p_verbose = cmod->cmod_verbose < 0 ? 0 : cmod->cmod_verbose;
     }
 
     if ((cmod->cmod_flags & (CMOD_SILENT | CMOD_UNSILENT))
@@ -8999,6 +9003,7 @@
  *	  "<cfile>" to path name under the cursor
  *	  "<sfile>" to sourced file name
  *	  "<stack>" to call stack
+ *	  "<script>" to current script name
  *	  "<slnum>" to sourced file line number
  *	  "<afile>" to file name for autocommand
  *	  "<abuf>"  to buffer number for autocommand
diff --git a/src/structs.h b/src/structs.h
index 670e0d2..05ea6fc 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -662,7 +662,8 @@
     regmatch_T	cmod_filter_regmatch;	// set by :filter /pat/
     int		cmod_filter_force;	// set for :filter!
 
-    int		cmod_verbose;		// non-zero to set 'verbose'
+    int		cmod_verbose;		// non-zero to set 'verbose', -1 is
+					// used for zero override
 
     // values for undo_cmdmod()
     char_u	*cmod_save_ei;		// saved value of 'eventignore'
diff --git a/src/testdir/test_excmd.vim b/src/testdir/test_excmd.vim
index 731e9aa..16d435b 100644
--- a/src/testdir/test_excmd.vim
+++ b/src/testdir/test_excmd.vim
@@ -580,10 +580,12 @@
 
 " Test for the :verbose command
 func Test_verbose_cmd()
-  call assert_equal(['  verbose=1'], split(execute('verbose set vbs'), "\n"))
+  set verbose=3
+  call assert_match('  verbose=1\n\s*Last set from ', execute('verbose set vbs'), "\n")
   call assert_equal(['  verbose=0'], split(execute('0verbose set vbs'), "\n"))
-  let l = execute("4verbose set verbose | set verbose")
-  call assert_equal(['  verbose=4', '  verbose=0'], split(l, "\n"))
+  set verbose=0
+  call assert_match('  verbose=4\n\s*Last set from .*\n  verbose=0',
+        \ execute("4verbose set verbose | set verbose"))
 endfunc
 
 " Test for the :delete command and the related abbreviated commands
diff --git a/src/version.c b/src/version.c
index 5ef4e74..c07ae9d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4741,
+/**/
     4740,
 /**/
     4739,
