diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index afbfd9f..d7c0dc3 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -2848,7 +2848,6 @@
 test_alloc_fail({id}, {countdown}, {repeat})
 				none	make memory allocation fail
 test_autochdir()		none	enable 'autochdir' during startup
-test_clear_search_pat()		none	clears the last used search pattern
 test_feedinput({string})	none	add key sequence to input buffer
 test_garbagecollect_now()	none	free memory right now for testing
 test_garbagecollect_soon()	none	free memory soon for testing
diff --git a/runtime/doc/testing.txt b/runtime/doc/testing.txt
index f2a7cf1..f343e86 100644
--- a/runtime/doc/testing.txt
+++ b/runtime/doc/testing.txt
@@ -52,11 +52,6 @@
 		startup has finished.
 
 
-test_clear_search_pat()				*test_clear_search_pat()*
-		Clears the last used search pattern (|/|) and the substitute
-		pattern (|:s|). This is useful for testing conditions where
-		these patterns are not set previously.
-
 test_feedinput({string})				*test_feedinput()*
 		Characters in {string} are queued for processing as if they
 		were typed by the user. This uses a low level input buffer.
diff --git a/runtime/doc/usr_41.txt b/runtime/doc/usr_41.txt
index 316eebc..1bed01f 100644
--- a/runtime/doc/usr_41.txt
+++ b/runtime/doc/usr_41.txt
@@ -963,7 +963,6 @@
 	assert_report()		report a test failure
 	test_alloc_fail()	make memory allocation fail
 	test_autochdir()	enable 'autochdir' during startup
-	test_clear_search_pat() clears the last used search pattern
 	test_override()		test with Vim internal overrides
 	test_garbagecollect_now()   free memory right now
 	test_getvalue()		get value of an internal variable
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 66be42c..58f1218 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -811,7 +811,6 @@
 #endif
     {"test_alloc_fail",	3, 3, FEARG_1,	  &t_void,	f_test_alloc_fail},
     {"test_autochdir",	0, 0, 0,	  &t_void,	f_test_autochdir},
-    {"test_clear_search_pat",	0, 0, 0,  &t_void,	f_test_clear_search_pat},
     {"test_feedinput",	1, 1, FEARG_1,	  &t_void,	f_test_feedinput},
     {"test_garbagecollect_now",	0, 0, 0,  &t_void,	f_test_garbagecollect_now},
     {"test_garbagecollect_soon", 0, 0, 0, &t_void,	f_test_garbagecollect_soon},
diff --git a/src/proto/regexp.pro b/src/proto/regexp.pro
index 5e8e1a5..01f1fff 100644
--- a/src/proto/regexp.pro
+++ b/src/proto/regexp.pro
@@ -12,7 +12,6 @@
 regprog_T *vim_regcomp(char_u *expr_arg, int re_flags);
 void vim_regfree(regprog_T *prog);
 void free_regexp_stuff(void);
-void free_regexp_prev_sub(void);
 int regprog_in_use(regprog_T *prog);
 int vim_regexec_prog(regprog_T **prog, int ignore_case, char_u *line, colnr_T col);
 int vim_regexec(regmatch_T *rmp, char_u *line, colnr_T col);
diff --git a/src/proto/search.pro b/src/proto/search.pro
index 3b46c06..e6ac11b 100644
--- a/src/proto/search.pro
+++ b/src/proto/search.pro
@@ -9,7 +9,6 @@
 void save_last_search_pattern(void);
 void restore_last_search_pattern(void);
 char_u *last_search_pattern(void);
-void free_last_pat(int idx);
 int ignorecase(char_u *pat);
 int ignorecase_opt(char_u *pat, int ic_in, int scs);
 int pat_has_uppercase(char_u *pat);
diff --git a/src/proto/testing.pro b/src/proto/testing.pro
index 209abf3..2b001a5 100644
--- a/src/proto/testing.pro
+++ b/src/proto/testing.pro
@@ -13,7 +13,6 @@
 void f_assert_true(typval_T *argvars, typval_T *rettv);
 void f_test_alloc_fail(typval_T *argvars, typval_T *rettv);
 void f_test_autochdir(typval_T *argvars, typval_T *rettv);
-void f_test_clear_search_pat(typval_T *argvars, typval_T *rettv);
 void f_test_feedinput(typval_T *argvars, typval_T *rettv);
 void f_test_getvalue(typval_T *argvars, typval_T *rettv);
 void f_test_option_not_set(typval_T *argvars, typval_T *rettv);
diff --git a/src/regexp.c b/src/regexp.c
index 7aeddb8..ef3896c 100644
--- a/src/regexp.c
+++ b/src/regexp.c
@@ -2663,15 +2663,6 @@
 }
 #endif
 
-/*
- * Free the previously used substitute search pattern.
- */
-    void
-free_regexp_prev_sub(void)
-{
-    VIM_CLEAR(reg_prev_sub);
-}
-
 #ifdef FEAT_EVAL
     static void
 report_re_switch(char_u *pat)
diff --git a/src/search.c b/src/search.c
index 0891557..3b310dc 100644
--- a/src/search.c
+++ b/src/search.c
@@ -380,12 +380,6 @@
 }
 #endif
 
-    void
-free_last_pat(int idx)
-{
-    VIM_CLEAR(spats[idx].pat);
-}
-
 /*
  * Return TRUE when case should be ignored for search pattern "pat".
  * Uses the 'ignorecase' and 'smartcase' options.
diff --git a/src/testdir/test_writefile.vim b/src/testdir/test_writefile.vim
index 98a06eb..f616980 100644
--- a/src/testdir/test_writefile.vim
+++ b/src/testdir/test_writefile.vim
@@ -214,6 +214,10 @@
   call assert_fails('1,2write', 'E140:')
   close!
 
+  call assert_fails('w > Xtest', 'E494:')
+
+  call assert_fails('w > Xtest', 'E494:')
+
   " Try to overwrite a directory
   if has('unix')
     call mkdir('Xdir1')
diff --git a/src/testing.c b/src/testing.c
index c2b382b..5dacf07 100644
--- a/src/testing.c
+++ b/src/testing.c
@@ -632,19 +632,6 @@
 }
 
 /*
- * "test_clear_search_pat()"
- * Free the last search and substitute patterns
- */
-    void
-f_test_clear_search_pat(typval_T *argvars UNUSED, typval_T *rettv UNUSED)
-{
-    free_last_pat(RE_SUBST);
-    free_last_pat(RE_SEARCH);
-    set_old_sub(NULL);
-    free_regexp_prev_sub();
-}
-
-/*
  * "test_feedinput()"
  */
     void
diff --git a/src/version.c b/src/version.c
index 7c31c19..a28fc03 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    250,
+/**/
     249,
 /**/
     248,
