patch 8.2.0500: using the same loop in many places

Problem:    Using the same loop in many places.
Solution:   Define more FOR_ALL macros. (Yegappan Lakshmanan, closes #5339)
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 6832bf1..0db848c 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -2831,8 +2831,7 @@
 		    if (lv_len > 0)
 		    {
 			range_list_materialize(list);
-			for (li = list->lv_first; li != NULL;
-							 li = li->li_next)
+			FOR_ALL_LIST_ITEMS(list, li)
 			    copy_tv(&li->li_tv, &pt->pt_argv[i++]);
 		    }
 		}
@@ -5021,7 +5020,7 @@
 
     l = argvars[0].vval.v_list;
     range_list_materialize(l);
-    for (li = l->lv_first; li != NULL; li = li->li_next)
+    FOR_ALL_LIST_ITEMS(argvars[0].vval.v_list, li)
     {
 	msg_puts((char *)tv_get_string(&li->li_tv));
 	msg_putchar('\n');