patch 8.0.0613: the conf filetype is used before ftdetect from packages

Problem:    The conf filetype detection is done before ftdetect scripts from
            packages that are added later.
Solution:   Add the FALLBACK argument to :setfiletype. (closes #1679,
            closes #1693)
diff --git a/src/testdir/test_alot.vim b/src/testdir/test_alot.vim
index e961e99..fec2271 100644
--- a/src/testdir/test_alot.vim
+++ b/src/testdir/test_alot.vim
@@ -16,6 +16,7 @@
 source test_feedkeys.vim
 source test_file_perm.vim
 source test_fileformat.vim
+source test_filetype.vim
 source test_filter_cmd.vim
 source test_filter_map.vim
 source test_findfile.vim
diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim
new file mode 100644
index 0000000..818603b
--- /dev/null
+++ b/src/testdir/test_filetype.vim
@@ -0,0 +1,43 @@
+" Test :setfiletype
+
+func Test_detection()
+  filetype on
+  augroup filetypedetect
+    au BufNewFile,BufRead *	call assert_equal(1, did_filetype())
+  augroup END
+  new something.vim
+  call assert_equal('vim', &filetype)
+
+  bwipe!
+  filetype off
+endfunc
+
+func Test_conf_type()
+  filetype on
+  call writefile(['# some comment', 'must be conf'], 'Xfile')
+  augroup filetypedetect
+    au BufNewFile,BufRead *	call assert_equal(0, did_filetype())
+  augroup END
+  split Xfile
+  call assert_equal('conf', &filetype)
+
+  bwipe!
+  call delete('Xfile')
+  filetype off
+endfunc
+
+func Test_other_type()
+  filetype on
+  augroup filetypedetect
+    au BufNewFile,BufRead *	call assert_equal(0, did_filetype())
+    au BufNewFile,BufRead Xfile	setf testfile
+    au BufNewFile,BufRead *	call assert_equal(1, did_filetype())
+  augroup END
+  call writefile(['# some comment', 'must be conf'], 'Xfile')
+  split Xfile
+  call assert_equal('testfile', &filetype)
+
+  bwipe!
+  call delete('Xfile')
+  filetype off
+endfunc