patch 8.0.1844: superfluous quickfix code, missing examples

Problem:    Superfluous quickfix code, missing examples.
Solution:   Remove unneeded code.  Add a few examples.  Add a bit more
            testing. (Yegappan Lakshmanan, closes #2916)
diff --git a/src/quickfix.c b/src/quickfix.c
index 98360d0..f8bfa41 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -5798,16 +5798,6 @@
     title_save = vim_strsave(qi->qf_lists[qf_idx].qf_title);
     retval = qf_add_entries(qi, qf_idx, di->di_tv.vval.v_list,
 	    title_save, action == ' ' ? 'a' : action);
-    if (action == 'r')
-    {
-	/*
-	 * When replacing the quickfix list entries using
-	 * qf_add_entries(), the title is set with a ':' prefix.
-	 * Restore the title with the saved title.
-	 */
-	vim_free(qi->qf_lists[qf_idx].qf_title);
-	qi->qf_lists[qf_idx].qf_title = vim_strsave(title_save);
-    }
     vim_free(title_save);
 
     return retval;
diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim
index 985b281..c3850ce 100644
--- a/src/testdir/test_quickfix.vim
+++ b/src/testdir/test_quickfix.vim
@@ -1185,6 +1185,13 @@
   call assert_equal(1, len(l), string(l))
   call assert_equal('|| msg2', l[0].text)
 
+  " When matching error lines, case should be ignored. Test for this.
+  set noignorecase
+  let l=getqflist({'lines' : ['Xtest:FOO10:Line 20'], 'efm':'%f:foo%l:%m'})
+  call assert_equal(10, l.items[0].lnum)
+  call assert_equal('Line 20', l.items[0].text)
+  set ignorecase&
+
   new | only
   let &efm = save_efm
 endfunc
diff --git a/src/version.c b/src/version.c
index 788ba24..145167d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -762,6 +762,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1844,
+/**/
     1843,
 /**/
     1842,