patch 8.1.0878: test for has('bsd') fails on some BSD systems

Problem:    Test for has('bsd') fails on some BSD systems.
Solution:   Adjust the uname match. (James McCoy, closes #3909)
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index b08d9aa..e75a896 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -1238,6 +1238,8 @@
     let uname = system('uname')
     call assert_equal(uname =~? 'BeOS', has('beos'))
     call assert_equal(uname =~? 'BSD\|DragonFly', has('bsd'))
+    " GNU userland on BSD kernels (e.g., GNU/kFreeBSD) don't have BSD defined
+    call assert_equal(uname =~? '\%(GNU/k\w\+\)\@<!BSD\|DragonFly', has('bsd'))
     call assert_equal(uname =~? 'HP-UX', has('hpux'))
     call assert_equal(uname =~? 'Linux', has('linux'))
     call assert_equal(uname =~? 'Darwin', has('mac'))