patch 9.0.1390: FOR_ALL_ macros are defined in an unexpected file
Problem: FOR_ALL_ macros are defined in an unexpected file.
Solution: Move FOR_ALL_ macros to macros.h. Add FOR_ALL_HASHTAB_ITEMS.
(Yegappan Lakshmanan, closes #12109)
diff --git a/src/session.c b/src/session.c
index a34eedf..e39ce4d 100644
--- a/src/session.c
+++ b/src/session.c
@@ -543,7 +543,7 @@
char_u *p, *t;
todo = (int)gvht->ht_used;
- for (hi = gvht->ht_array; todo > 0; ++hi)
+ FOR_ALL_HASHTAB_ITEMS(gvht, hi, todo)
{
if (!HASHITEM_EMPTY(hi))
{