patch 8.0.0026
Problem: Error format with %W, %C and %Z does not work. (Gerd Wachsmuth)
Solution: Skip code when qf_multiignore is set. (Lcd)
diff --git a/src/testdir/test_quickfix.vim b/src/testdir/test_quickfix.vim
index 4a39ac4..73ca7ca 100644
--- a/src/testdir/test_quickfix.vim
+++ b/src/testdir/test_quickfix.vim
@@ -818,6 +818,29 @@
call delete('habits1.txt')
endfunction
+" Test for resync after continuing an ignored message
+function! Xefm_ignore_continuations(cchar)
+ call s:setup_commands(a:cchar)
+
+ let save_efm = &efm
+
+ let &efm =
+ \ '%Eerror %m %l,' .
+ \ '%-Wignored %m %l,' .
+ \ '%+Cmore ignored %m %l,' .
+ \ '%Zignored end'
+ Xgetexpr ['ignored warning 1', 'more ignored continuation 2', 'ignored end', 'error resync 4']
+ let l = map(g:Xgetlist(), '[v:val.text, v:val.valid, v:val.lnum, v:val.type]')
+ call assert_equal([['resync', 1, 4, 'E']], l)
+
+ let &efm = save_efm
+endfunction
+
+function! Test_efm_ignore_continuations()
+ call Xefm_ignore_continuations('c')
+ call Xefm_ignore_continuations('l')
+endfunction
+
" Tests for invalid error format specifies
function Xinvalid_efm_Tests(cchar)
call s:setup_commands(a:cchar)