patch 7.4.1149
Problem:    Using the local value of 'errorformat' causes more problems than
            it solves.
Solution:   Revert 7.4.1013.
diff --git a/src/quickfix.c b/src/quickfix.c
index 21ac1c0..014b93d 100644
--- a/src/quickfix.c
+++ b/src/quickfix.c
@@ -4230,10 +4230,7 @@
 	if ((tv->v_type == VAR_STRING && tv->vval.v_string != NULL)
 		|| (tv->v_type == VAR_LIST && tv->vval.v_list != NULL))
 	{
-	    char_u *efm = *curwin->w_buffer->b_p_efm == NUL ? p_efm
-						  : curwin->w_buffer->b_p_efm;
-
-	    if (qf_init_ext(qi, NULL, NULL, tv, efm,
+	    if (qf_init_ext(qi, NULL, NULL, tv, p_efm,
 			    (eap->cmdidx != CMD_caddexpr
 			     && eap->cmdidx != CMD_laddexpr),
 				 (linenr_T)0, (linenr_T)0, *eap->cmdlinep) > 0