diff --git a/src/dict.c b/src/dict.c
index f170937..a9a909b 100644
--- a/src/dict.c
+++ b/src/dict.c
@@ -618,7 +618,6 @@
 dict_get_tv(dict_T *d, char_u *key, typval_T *rettv)
 {
     dictitem_T	*di;
-    char_u	*s;
 
     di = dict_find(d, key, -1);
     if (di == NULL)
diff --git a/src/insexpand.c b/src/insexpand.c
index 7407647..acddd26 100644
--- a/src/insexpand.c
+++ b/src/insexpand.c
@@ -103,7 +103,9 @@
     compl_T	*cp_prev;
     char_u	*cp_str;	// matched text
     char_u	*(cp_text[CPT_COUNT]);	// text for the menu
+#ifdef FEAT_EVAL
     typval_T	cp_user_data;
+#endif
     char_u	*cp_fname;	// file containing the match, allocated when
 				// cp_flags has CP_FREE_FNAME
     int		cp_flags;	// CP_ values
@@ -647,8 +649,10 @@
 	    if (cptext[i] != NULL && *cptext[i] != NUL)
 		match->cp_text[i] = vim_strsave(cptext[i]);
     }
+#ifdef FEAT_EVAL
     if (user_data != NULL)
 	match->cp_user_data = *user_data;
+#endif
 
     // Link the new match structure in the list of matches.
     if (compl_first_match == NULL)
@@ -1459,7 +1463,9 @@
 	    vim_free(match->cp_fname);
 	for (i = 0; i < CPT_COUNT; ++i)
 	    vim_free(match->cp_text[i]);
+#ifdef FEAT_EVAL
 	clear_tv(&match->cp_user_data);
+#endif
 	vim_free(match);
     } while (compl_curr_match != NULL && compl_curr_match != compl_first_match);
     compl_first_match = compl_curr_match = NULL;
diff --git a/src/version.c b/src/version.c
index d159ceb..eff491d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    86,
+/**/
     85,
 /**/
     84,
