rem: WM_ITERATE_BAG(items, item, i) {
add: for(i=0; i<WMGetArrayItemCount(items); i++) { item = WMGetFromArray(items, i);
context: closestListItem(WMList *list, char *text, Bool exact){    WMListItem *item;    WMBag *items = WMGetListItems(list);    WMBagIterator i;    int len = strlen(text);    if (len==0)	return -1;    WM_ITERATE_BAG(items, item, i) {        if (strlen(item->text) >= len &&            ((exact && strcmp(item->text, text)==0) ||             (!exact && strncmp(item->text, text, len)==0))) {	    return WMBagIndexForIterator(items, i);	}    }    return -1;}