patch 7.4.858
Problem:    It's a bit clumsy to execute a command on a list of matches.
Solution:   Add the ":ldo", ":lfdo", ":cdo" and ":cfdo" commands. (Yegappan
            Lakshmanan)
diff --git a/src/ex_cmds.h b/src/ex_cmds.h
index 7945956..874ac6b 100644
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -65,6 +65,7 @@
 #define ADDR_LOADED_BUFFERS	3
 #define ADDR_BUFFERS		4
 #define ADDR_TABS		5
+#define ADDR_QUICKFIX		6
 
 #ifndef DO_DECLARE_EXCMD
 typedef struct exarg exarg_T;
@@ -270,6 +271,9 @@
 EX(CMD_cd,		"cd",		ex_cd,
 			BANG|FILE1|TRLBAR|CMDWIN,
 			ADDR_LINES),
+EX(CMD_cdo,		"cdo",		ex_listdo,
+			BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL,
+			ADDR_QUICKFIX),
 EX(CMD_center,		"center",	ex_align,
 			TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY,
 			ADDR_LINES),
@@ -279,6 +283,9 @@
 EX(CMD_cfile,		"cfile",	ex_cfile,
 			TRLBAR|FILE1|BANG,
 			ADDR_LINES),
+EX(CMD_cfdo,		"cfdo",		ex_listdo,
+			BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL,
+			ADDR_QUICKFIX),
 EX(CMD_cfirst,		"cfirst",	ex_cc,
 			RANGE|NOTADR|COUNT|TRLBAR|BANG,
 			ADDR_LINES),
@@ -729,6 +736,9 @@
 EX(CMD_lcscope,		"lcscope",	do_cscope,
 			EXTRA|NOTRLCOM|XFILE,
 			ADDR_LINES),
+EX(CMD_ldo,		"ldo",		ex_listdo,
+			BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL,
+			ADDR_QUICKFIX),
 EX(CMD_left,		"left",		ex_align,
 			TRLBAR|RANGE|WHOLEFOLD|EXTRA|CMDWIN|MODIFY,
 			ADDR_LINES),
@@ -744,6 +754,9 @@
 EX(CMD_lfile,		"lfile",	ex_cfile,
 			TRLBAR|FILE1|BANG,
 			ADDR_LINES),
+EX(CMD_lfdo,		"lfdo",		ex_listdo,
+			BANG|NEEDARG|EXTRA|NOTRLCOM|RANGE|NOTADR|DFLALL,
+			ADDR_QUICKFIX),
 EX(CMD_lfirst,		"lfirst",	ex_cc,
 			RANGE|NOTADR|COUNT|TRLBAR|BANG,
 			ADDR_LINES),