• Tom Lane's avatar
    Get rid of explicit argument-count markings in tab-complete.c. · 4f3b38fe
    Tom Lane authored
    This replaces the "TailMatchesN" macros with just "TailMatches",
    and likewise "HeadMatchesN" becomes "HeadMatches" and "MatchesN"
    becomes "Matches".  The various COMPLETE_WITH_LISTn macros are
    reduced to COMPLETE_WITH, and the single-item COMPLETE_WITH_CONST
    also gets folded into that.  This eliminates a lot of minor
    annoyance in writing tab-completion rules.  Usefully, the compiled
    code also gets a bit smaller (10% or so, on my machine).
    
    The implementation depends on variadic macros, so we couldn't have
    done this before we required C99.
    
    Andres Freund and Thomas Munro; some cosmetic cleanup by me.
    
    Discussion: https://postgr.es/m/d8jo9djvm7h.fsf@dalvik.ping.uio.no
    4f3b38fe
c.h 38 KB