updated for version 7.0174
diff --git a/src/edit.c b/src/edit.c
index 53eabe6..f4f3f9a 100644
--- a/src/edit.c
+++ b/src/edit.c
@@ -1045,8 +1045,10 @@
 	case K_S_UP:	/* <S-Up> */
 	case K_PAGEUP:
 	case K_KPAGEUP:
+#ifdef FEAT_INS_EXPAND
 	    if (pum_visible())
 		goto docomplete;
+#endif
 	    ins_pageup();
 	    break;
 
@@ -1060,8 +1062,10 @@
 	case K_S_DOWN:	/* <S-Down> */
 	case K_PAGEDOWN:
 	case K_KPAGEDOWN:
+#ifdef FEAT_INS_EXPAND
 	    if (pum_visible())
 		goto docomplete;
+#endif
 	    ins_pagedown();
 	    break;
 
@@ -5073,6 +5077,7 @@
 #endif
 	ResetRedobuff();
 	AppendToRedobuff((char_u *)"1i");   /* pretend we start an insertion */
+	new_insert_skip = 2;
     }
     else if (ins_need_undo)
     {
diff --git a/src/ex_getln.c b/src/ex_getln.c
index bc5aca5..508c563 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -1105,6 +1105,7 @@
 		{
 		    cmdline_paste(c, i == Ctrl_R);
 
+#ifdef FEAT_EVAL
 		    /* When there was a serious error abort getting the
 		     * command line. */
 		    if (aborting())
@@ -1113,7 +1114,7 @@
 					   putting it in history */
 			goto returncmd; /* back to cmd mode */
 		    }
-
+#endif
 		    KeyTyped = FALSE;	/* Don't do p_wc completion. */
 #ifdef FEAT_EVAL
 		    if (new_cmdpos >= 0)
diff --git a/src/misc1.c b/src/misc1.c
index 85b81fd..a5a1805 100644
--- a/src/misc1.c
+++ b/src/misc1.c
@@ -2145,6 +2145,7 @@
  *
  * return FAIL for failure, OK otherwise
  */
+/*ARGSUSED*/
     int
 del_bytes(count, fixpos, use_delcombine)
     long	count;
diff --git a/src/ops.c b/src/ops.c
index 73976d1..0c1e853 100644
--- a/src/ops.c
+++ b/src/ops.c
@@ -1844,7 +1844,11 @@
 	    }
 #endif
 	    (void)del_bytes((long)n, restart_edit == NUL && !virtual_op,
-				oap->op_type == OP_DELETE && !oap->is_VIsual);
+				oap->op_type == OP_DELETE
+#ifdef FEAT_VISUAL
+				    && !oap->is_VIsual
+#endif
+							);
 	}
 	else				/* delete characters between lines */
 	{
@@ -1865,7 +1869,11 @@
 	    curwin->w_cursor.col = 0;
 	    (void)del_bytes((long)(oap->end.col + 1 - !oap->inclusive),
 					   restart_edit == NUL && !virtual_op,
-				oap->op_type == OP_DELETE && !oap->is_VIsual);
+				oap->op_type == OP_DELETE
+#ifdef FEAT_VISUAL
+					&& !oap->is_VIsual
+#endif
+							    );
 	    curwin->w_cursor = curpos;		/* restore curwin->w_cursor */
 
 	    (void)do_join(FALSE);
diff --git a/src/proto/fileio.pro b/src/proto/fileio.pro
index 4348d36..816de42 100644
--- a/src/proto/fileio.pro
+++ b/src/proto/fileio.pro
@@ -41,7 +41,7 @@
 char_u *get_augroup_name __ARGS((expand_T *xp, int idx));
 char_u *set_context_in_autocmd __ARGS((expand_T *xp, char_u *arg, int doautocmd));
 char_u *get_event_name __ARGS((expand_T *xp, int idx));
-int au_exists __ARGS((char_u *name, char_u *name_end, char_u *pattern));
+int au_exists __ARGS((char_u *arg));
 int match_file_pat __ARGS((char_u *pattern, regprog_T *prog, char_u *fname, char_u *sfname, char_u *tail, int allow_dirs));
 int match_file_list __ARGS((char_u *list, char_u *sfname, char_u *ffname));
 char_u *file_pat_to_reg_pat __ARGS((char_u *pat, char_u *pat_end, char *allow_dirs, int no_bslash));
diff --git a/src/structs.h b/src/structs.h
index 208b2d0..5b91cec 100644
--- a/src/structs.h
+++ b/src/structs.h
@@ -1392,6 +1392,7 @@
     int		b_start_ffc;	/* first char of 'ff' when edit started */
 #ifdef FEAT_MBYTE
     char_u	*b_start_fenc;	/* 'fileencoding' when edit started or NULL */
+    int		b_bad_char;	/* "++bad=" argument when edit started or 0 */
 #endif
 
 #ifdef FEAT_EVAL
diff --git a/src/version.h b/src/version.h
index a429308..cc5a45b 100644
--- a/src/version.h
+++ b/src/version.h
@@ -36,5 +36,5 @@
 #define VIM_VERSION_NODOT	"vim70aa"
 #define VIM_VERSION_SHORT	"7.0aa"
 #define VIM_VERSION_MEDIUM	"7.0aa ALPHA"
-#define VIM_VERSION_LONG	"VIM - Vi IMproved 7.0aa ALPHA (2005 Dec 18)"
-#define VIM_VERSION_LONG_DATE	"VIM - Vi IMproved 7.0aa ALPHA (2005 Dec 18, compiled "
+#define VIM_VERSION_LONG	"VIM - Vi IMproved 7.0aa ALPHA (2005 Dec 19)"
+#define VIM_VERSION_LONG_DATE	"VIM - Vi IMproved 7.0aa ALPHA (2005 Dec 19, compiled "