updated for version 7.3.444
Problem:    ":all!" and ":sall!" give error E477, even though the
            documentation says these are valid commands.
Solution:   Support the exclamation mark. (Hirohito Higashi)
diff --git a/src/ex_cmds.h b/src/ex_cmds.h
index adbbd5a..16540bd 100644
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -102,7 +102,7 @@
 EX(CMD_aboveleft,	"aboveleft",	ex_wrongmodifier,
 			NEEDARG|EXTRA|NOTRLCOM),
 EX(CMD_all,		"all",		ex_all,
-			RANGE|NOTADR|COUNT|TRLBAR),
+			BANG|RANGE|NOTADR|COUNT|TRLBAR),
 EX(CMD_amenu,		"amenu",	ex_menu,
 			RANGE|NOTADR|ZEROR|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN),
 EX(CMD_anoremenu,	"anoremenu",	ex_menu,
@@ -798,7 +798,7 @@
 EX(CMD_sargument,	"sargument",	ex_argument,
 			BANG|RANGE|NOTADR|COUNT|EXTRA|EDITCMD|ARGOPT|TRLBAR),
 EX(CMD_sall,		"sall",		ex_all,
-			RANGE|NOTADR|COUNT|TRLBAR),
+			BANG|RANGE|NOTADR|COUNT|TRLBAR),
 EX(CMD_sandbox,		"sandbox",	ex_wrongmodifier,
 			NEEDARG|EXTRA|NOTRLCOM),
 EX(CMD_saveas,		"saveas",	ex_write,
diff --git a/src/testdir/test31.in b/src/testdir/test31.in
index b00c760..7dc2334 100644
--- a/src/testdir/test31.in
+++ b/src/testdir/test31.in
@@ -63,6 +63,12 @@
 :" write "testtext 1"
 A 3:close!
 :w >>test.out
+:set nohidden
+:" test ":all!" hides changed buffer; write "testtext 2 2 2"
+:sp Xtest4
+GA 4:all!
+:1wincmd w
+:w >>test.out
 :qa!
 ENDTEST
 
diff --git a/src/testdir/test31.ok b/src/testdir/test31.ok
index 3311ad5..185bdc7 100644
--- a/src/testdir/test31.ok
+++ b/src/testdir/test31.ok
@@ -9,3 +9,4 @@
 testtext 1
 testtext 3 3 3
 testtext 1
+testtext 2 2 2
diff --git a/src/version.c b/src/version.c
index 2461456..bf32d28 100644
--- a/src/version.c
+++ b/src/version.c
@@ -715,6 +715,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    444,
+/**/
     443,
 /**/
     442,