diff --git a/src/diff.c b/src/diff.c
index be7e38c..92e1a05 100644
--- a/src/diff.c
+++ b/src/diff.c
@@ -641,7 +641,7 @@
  */
     void
 ex_diffupdate(
-    exarg_T	*eap UNUSED)	    /* can be NULL */
+    exarg_T	*eap)	    /* can be NULL */
 {
     buf_T	*buf;
     int		idx_orig;
diff --git a/src/eval.c b/src/eval.c
index 794ff68..faed315 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -9217,7 +9217,7 @@
  * "arglistid()" function
  */
     static void
-f_arglistid(typval_T *argvars UNUSED, typval_T *rettv)
+f_arglistid(typval_T *argvars, typval_T *rettv)
 {
     win_T	*wp;
 
@@ -17782,7 +17782,7 @@
  * "screenattr()" function
  */
     static void
-f_screenattr(typval_T *argvars UNUSED, typval_T *rettv)
+f_screenattr(typval_T *argvars, typval_T *rettv)
 {
     int		row;
     int		col;
@@ -17802,7 +17802,7 @@
  * "screenchar()" function
  */
     static void
-f_screenchar(typval_T *argvars UNUSED, typval_T *rettv)
+f_screenchar(typval_T *argvars, typval_T *rettv)
 {
     int		row;
     int		col;
@@ -20969,7 +20969,7 @@
  * "visualmode()" function
  */
     static void
-f_visualmode(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
+f_visualmode(typval_T *argvars, typval_T *rettv)
 {
     char_u	str[2];
 
diff --git a/src/ex_cmds2.c b/src/ex_cmds2.c
index 88257cc..e1a0dfd 100644
--- a/src/ex_cmds2.c
+++ b/src/ex_cmds2.c
@@ -2033,7 +2033,7 @@
     static int
 do_arglist(
     char_u	*str,
-    int		what UNUSED,
+    int		what,
     int		after UNUSED)		/* 0 means before first one */
 {
     garray_T	new_ga;
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 9900c1b..4aa7f5d 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -9262,7 +9262,7 @@
  * ":undo".
  */
     static void
-ex_undo(exarg_T *eap UNUSED)
+ex_undo(exarg_T *eap)
 {
     if (eap->addr_count == 1)	    /* :undo 123 */
 	undo_time(eap->line2, FALSE, FALSE, TRUE);
@@ -9759,7 +9759,7 @@
 #if ((defined(FEAT_SESSION) || defined(FEAT_EVAL)) && defined(vim_mkdir)) \
 	|| defined(PROTO)
     int
-vim_mkdir_emsg(char_u *name, int prot UNUSED)
+vim_mkdir_emsg(char_u *name, int prot)
 {
     if (vim_mkdir(name, prot) != 0)
     {
diff --git a/src/version.c b/src/version.c
index 3491a4b..c11af3f 100644
--- a/src/version.c
+++ b/src/version.c
@@ -744,6 +744,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1476,
+/**/
     1475,
 /**/
     1474,
diff --git a/src/window.c b/src/window.c
index ee69921..7dfbe5a 100644
--- a/src/window.c
+++ b/src/window.c
@@ -3896,8 +3896,8 @@
 enter_tabpage(
     tabpage_T	*tp,
     buf_T	*old_curbuf UNUSED,
-    int		trigger_enter_autocmds UNUSED,
-    int		trigger_leave_autocmds UNUSED)
+    int		trigger_enter_autocmds,
+    int		trigger_leave_autocmds)
 {
     int		old_off = tp->tp_firstwin->w_winrow;
     win_T	*next_prevwin = tp->tp_prevwin;
