diff --git a/src/os_win32.c b/src/os_win32.c
index f32d486..20ec8ad 100644
--- a/src/os_win32.c
+++ b/src/os_win32.c
@@ -193,7 +193,6 @@
     int length;
 } input_record_buffer_T;
 static input_record_buffer_T input_record_buffer;
-static int peek_input_record_buffer(INPUT_RECORD* irEvents, int nMaxLength);
 static int read_input_record_buffer(INPUT_RECORD* irEvents, int nMaxLength);
 static int write_input_record_buffer(INPUT_RECORD* irEvents, int nLength);
 #endif
@@ -1735,7 +1734,7 @@
     int		row;
     int		col;
     int		repeated_click;
-    int_u	mods;
+    int_u	mods = 0;
     int		move;
 
     if (!dict_has_key(args, "row") || !dict_has_key(args, "col"))
@@ -1879,18 +1878,6 @@
     }
     return nCount;
 }
-    static int
-peek_input_record_buffer(INPUT_RECORD* irEvents, int nMaxLength)
-{
-    int nCount = 0;
-    input_record_buffer_node_T *temp =  input_record_buffer.head;
-    while (nCount < nMaxLength && temp != NULL)
-    {
-	irEvents[nCount++] = temp->ir;
-	temp = temp->next;
-    }
-    return nCount;
-}
 #endif // !FEAT_GUI_MSWIN || VIMDLL
 
 #ifdef FEAT_EVAL
