You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
Standardize some more loops that chase down parallel lists.
We have forboth() and forthree() macros that simplify iteratingthrough several parallel lists, but not everyplace that couldreasonably use those was doing so. Also invent forfour() andforfive() macros to do the same for four or five parallel lists,and use those where applicable.The immediate motivation for doing this is to reduce the numberof ad-hoc lnext() calls, to reduce the footprint of a WIP patch.However, it seems like good cleanup and error-proofing anyway;the places that were combining forthree() with a manually iteratedloop seem particularly illegible and bug-prone.There was some speculation about restructuring related parsetreerepresentations to reduce the need for parallel list chasing ofthis sort. Perhaps that's a win, or perhaps not, but in any caseit would be considerably more invasive than this patch; and it'snot particularly related to my immediate goal of improving theList infrastructure. So I'll leave that question for another day.Patch by me; thanks to David Rowley for review.Discussion:https://postgr.es/m/11587.1550975080@sss.pgh.pa.us