diff --git a/src/Makefile b/src/Makefile
index bbf80d3..d34a608 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -2310,7 +2310,7 @@
 
 # Run individual OLD style test.
 # These do not depend on the executable, compile it when needed.
-test1 test42 test49 test59:
+test1 test49 test59:
 	cd testdir; rm -f $@.out; $(MAKE) -f Makefile $@.out VIMPROG=../$(VIMTESTTARGET) $(GUI_TESTARG) SCRIPTSOURCE=../$(SCRIPTSOURCE)
 
 # Run individual NEW style test.
diff --git a/src/testdir/Make_all.mak b/src/testdir/Make_all.mak
index a25a480..635087c 100644
--- a/src/testdir/Make_all.mak
+++ b/src/testdir/Make_all.mak
@@ -11,7 +11,7 @@
 SCRIPTS_FIRST = test1.out
 
 # Tests that run on all systems.
-SCRIPTS_ALL = test42.out
+SCRIPTS_ALL =
 
 # Tests that run on most systems, but not on Amiga.
 SCRIPTS_MORE1 =
diff --git a/src/testdir/Make_dos.mak b/src/testdir/Make_dos.mak
index 0e07ed5..f97b3e9 100644
--- a/src/testdir/Make_dos.mak
+++ b/src/testdir/Make_dos.mak
@@ -10,10 +10,7 @@
 !include Make_all.mak
 
 # Omitted:
-# test2		"\\tmp" doesn't work.
-# test10	'errorformat' is different
 # test49	fails in various ways
-# test97	\{ and \$ are not escaped characters.
 
 SCRIPTS = $(SCRIPTS_ALL) $(SCRIPTS_MORE1) $(SCRIPTS_MORE4)
 
diff --git a/src/testdir/Make_ming.mak b/src/testdir/Make_ming.mak
index f95f70c..e1f3467 100644
--- a/src/testdir/Make_ming.mak
+++ b/src/testdir/Make_ming.mak
@@ -28,11 +28,6 @@
 
 include Make_all.mak
 
-# Omitted:
-# test2		"\\tmp" doesn't work.
-# test10	'errorformat' is different
-# test97	\{ and \$ are not escaped characters
-
 SCRIPTS = $(SCRIPTS_ALL) $(SCRIPTS_MORE1) $(SCRIPTS_MORE4) $(SCRIPTS_WIN32)
 
 SCRIPTS_BENCH = test_bench_regexp.res
diff --git a/src/testdir/Make_vms.mms b/src/testdir/Make_vms.mms
index af76f70..848fca7 100644
--- a/src/testdir/Make_vms.mms
+++ b/src/testdir/Make_vms.mms
@@ -73,8 +73,7 @@
 
 .SUFFIXES : .out .in
 
-SCRIPT = test1.out \
-       test42.out test49.out test77a.out
+SCRIPT = test1.out test49.out test77a.out
 
 # Known problems:
 #
diff --git a/src/testdir/test42.in b/src/testdir/test42.in
deleted file mode 100644
index 1d9d3ab..0000000
--- a/src/testdir/test42.in
+++ /dev/null
Binary files differ
diff --git a/src/testdir/test42.ok b/src/testdir/test42.ok
deleted file mode 100644
index 183430d..0000000
--- a/src/testdir/test42.ok
+++ /dev/null
Binary files differ
diff --git a/src/testdir/test_writefile.vim b/src/testdir/test_writefile.vim
index d92d6ae..d6e7e64 100644
--- a/src/testdir/test_writefile.vim
+++ b/src/testdir/test_writefile.vim
@@ -556,4 +556,132 @@
   %bw!
 endfunc
 
+" Test for writing and reading a file starting with a BOM.
+" Byte Order Mark (BOM) character for various encodings is below:
+"     UTF-8      : EF BB BF
+"     UTF-16 (BE): FE FF
+"     UTF-16 (LE): FF FE
+"     UTF-32 (BE): 00 00 FE FF
+"     UTF-32 (LE): FF FE 00 00
+func Test_readwrite_file_with_bom()
+  let utf8_bom = "\xEF\xBB\xBF"
+  let utf16be_bom = "\xFE\xFF"
+  let utf16le_bom = "\xFF\xFE"
+  let utf32be_bom = "\n\n\xFE\xFF"
+  let utf32le_bom = "\xFF\xFE\n\n"
+  let save_fileencoding = &fileencoding
+  set cpoptions+=S
+
+  " Check that editing a latin1 file doesn't see a BOM
+  call writefile(["\xFE\xFElatin-1"], 'Xtest1')
+  edit Xtest1
+  call assert_equal('latin1', &fileencoding)
+  call assert_equal(0, &bomb)
+  set fenc=latin1
+  write Xfile2
+  call assert_equal(["\xFE\xFElatin-1", ''], readfile('Xfile2', 'b'))
+  set bomb fenc=latin1
+  write Xtest3
+  call assert_equal(["\xFE\xFElatin-1", ''], readfile('Xtest3', 'b'))
+  set bomb&
+
+  " Check utf-8 BOM
+  %bw!
+  call writefile([utf8_bom .. "utf-8"], 'Xtest1')
+  edit! Xtest1
+  call assert_equal('utf-8', &fileencoding)
+  call assert_equal(1, &bomb)
+  call assert_equal('utf-8', getline(1))
+  set fenc=latin1
+  write! Xfile2
+  call assert_equal(['utf-8', ''], readfile('Xfile2', 'b'))
+  set fenc=utf-8
+  w! Xtest3
+  call assert_equal([utf8_bom .. "utf-8", ''], readfile('Xtest3', 'b'))
+
+  " Check utf-8 with an error (will fall back to latin-1)
+  %bw!
+  call writefile([utf8_bom .. "utf-8\x80err"], 'Xtest1')
+  edit! Xtest1
+  call assert_equal('latin1', &fileencoding)
+  call assert_equal(0, &bomb)
+  call assert_equal("\xC3\xAF\xC2\xBB\xC2\xBFutf-8\xC2\x80err", getline(1))
+  set fenc=latin1
+  write! Xfile2
+  call assert_equal([utf8_bom .. "utf-8\x80err", ''], readfile('Xfile2', 'b'))
+  set fenc=utf-8
+  w! Xtest3
+  call assert_equal(["\xC3\xAF\xC2\xBB\xC2\xBFutf-8\xC2\x80err", ''],
+        \ readfile('Xtest3', 'b'))
+
+  " Check ucs-2 BOM
+  %bw!
+  call writefile([utf16be_bom .. "\nu\nc\ns\n-\n2\n"], 'Xtest1')
+  edit! Xtest1
+  call assert_equal('utf-16', &fileencoding)
+  call assert_equal(1, &bomb)
+  call assert_equal('ucs-2', getline(1))
+  set fenc=latin1
+  write! Xfile2
+  call assert_equal(["ucs-2", ''], readfile('Xfile2', 'b'))
+  set fenc=ucs-2
+  w! Xtest3
+  call assert_equal([utf16be_bom .. "\nu\nc\ns\n-\n2\n", ''],
+        \ readfile('Xtest3', 'b'))
+
+  " Check ucs-2le BOM
+  %bw!
+  call writefile([utf16le_bom .. "u\nc\ns\n-\n2\nl\ne\n"], 'Xtest1')
+  " Need to add a NUL byte after the NL byte
+  call writefile(0z00, 'Xtest1', 'a')
+  edit! Xtest1
+  call assert_equal('utf-16le', &fileencoding)
+  call assert_equal(1, &bomb)
+  call assert_equal('ucs-2le', getline(1))
+  set fenc=latin1
+  write! Xfile2
+  call assert_equal(["ucs-2le", ''], readfile('Xfile2', 'b'))
+  set fenc=ucs-2le
+  w! Xtest3
+  call assert_equal([utf16le_bom .. "u\nc\ns\n-\n2\nl\ne\n", "\n"],
+        \ readfile('Xtest3', 'b'))
+
+  " Check ucs-4 BOM
+  %bw!
+  call writefile([utf32be_bom .. "\n\n\nu\n\n\nc\n\n\ns\n\n\n-\n\n\n4\n\n\n"], 'Xtest1')
+  edit! Xtest1
+  call assert_equal('ucs-4', &fileencoding)
+  call assert_equal(1, &bomb)
+  call assert_equal('ucs-4', getline(1))
+  set fenc=latin1
+  write! Xfile2
+  call assert_equal(["ucs-4", ''], readfile('Xfile2', 'b'))
+  set fenc=ucs-4
+  w! Xtest3
+  call assert_equal([utf32be_bom .. "\n\n\nu\n\n\nc\n\n\ns\n\n\n-\n\n\n4\n\n\n", ''], readfile('Xtest3', 'b'))
+
+  " Check ucs-4le BOM
+  %bw!
+  call writefile([utf32le_bom .. "u\n\n\nc\n\n\ns\n\n\n-\n\n\n4\n\n\nl\n\n\ne\n\n\n"], 'Xtest1')
+  " Need to add three NUL bytes after the NL byte
+  call writefile(0z000000, 'Xtest1', 'a')
+  edit! Xtest1
+  call assert_equal('ucs-4le', &fileencoding)
+  call assert_equal(1, &bomb)
+  call assert_equal('ucs-4le', getline(1))
+  set fenc=latin1
+  write! Xfile2
+  call assert_equal(["ucs-4le", ''], readfile('Xfile2', 'b'))
+  set fenc=ucs-4le
+  w! Xtest3
+  call assert_equal([utf32le_bom .. "u\n\n\nc\n\n\ns\n\n\n-\n\n\n4\n\n\nl\n\n\ne\n\n\n", "\n\n\n"], readfile('Xtest3', 'b'))
+
+  set cpoptions-=S
+  let &fileencoding = save_fileencoding
+  call delete('Xtest1')
+  call delete('Xtest2')
+  call delete('Xtest3')
+  %bw!
+endfunc
+
 " vim: shiftwidth=2 sts=2 expandtab
diff --git a/src/version.c b/src/version.c
index 1271668..045dfbc 100644
--- a/src/version.c
+++ b/src/version.c
@@ -755,6 +755,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1316,
+/**/
     1315,
 /**/
     1314,
