patch 8.2.4714: using g:filetype_dat and g:filetype_src not tested

Problem:    Using g:filetype_dat and g:filetype_src not tested.
Solution:   Add a test. (Patrick Meiser-Knosowski, closes #10117)
diff --git a/src/testdir/test_filetype.vim b/src/testdir/test_filetype.vim
index c8c159c..d324c02 100644
--- a/src/testdir/test_filetype.vim
+++ b/src/testdir/test_filetype.vim
@@ -873,22 +873,32 @@
 func Test_dat_file()
   filetype on
 
+  " KRL header start with "&WORD", but is not always present.
   call writefile(['&ACCESS'], 'datfile.dat')
   split datfile.dat
   call assert_equal('krl', &filetype)
   bwipe!
   call delete('datfile.dat')
 
+  " KRL defdat with leading spaces, for KRL file extension is not case
+  " sensitive.
   call writefile(['  DEFDAT datfile'], 'datfile.Dat')
   split datfile.Dat
   call assert_equal('krl', &filetype)
   bwipe!
   call delete('datfile.Dat')
 
-  call writefile(['', 'defdat  datfile'], 'datfile.DAT')
+  " KRL defdat with embedded spaces, file starts with empty line(s).
+  call writefile(['', 'defdat  datfile  public'], 'datfile.DAT')
   split datfile.DAT
   call assert_equal('krl', &filetype)
   bwipe!
+
+  " User may overrule file inspection
+  let g:filetype_dat = 'dat'
+  split datfile.DAT
+  call assert_equal('dat', &filetype)
+  bwipe!
   call delete('datfile.DAT')
 
   filetype off
@@ -1339,22 +1349,31 @@
 func Test_src_file()
   filetype on
 
+  " KRL header start with "&WORD", but is not always present.
   call writefile(['&ACCESS'], 'srcfile.src')
   split srcfile.src
   call assert_equal('krl', &filetype)
   bwipe!
   call delete('srcfile.src')
 
+  " KRL def with leading spaces, for KRL file extension is not case sensitive.
   call writefile(['  DEF srcfile()'], 'srcfile.Src')
   split srcfile.Src
   call assert_equal('krl', &filetype)
   bwipe!
   call delete('srcfile.Src')
 
+  " KRL global def with embedded spaces, file starts with empty line(s).
   call writefile(['', 'global  def  srcfile()'], 'srcfile.SRC')
   split srcfile.SRC
   call assert_equal('krl', &filetype)
   bwipe!
+
+  " User may overrule file inspection
+  let g:filetype_src = 'src'
+  split srcfile.SRC
+  call assert_equal('src', &filetype)
+  bwipe!
   call delete('srcfile.SRC')
 
   filetype off
diff --git a/src/version.c b/src/version.c
index 15d02e1..efd7648 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    4714,
+/**/
     4713,
 /**/
     4712,