• Tom Lane's avatar
    Fix oversight in CALL argument handling, and do some minor cleanup. · 65b1d767
    Tom Lane authored
    CALL statements cannot support sub-SELECTs in the arguments of the called
    procedure, since they just use ExecEvalExpr to evaluate such arguments.
    Teach transformSubLink() to reject the case, as it already does for other
    contexts in which subqueries are not supported.
    
    In passing, s/EXPR_KIND_CALL/EXPR_KIND_CALL_ARGUMENT/ to make that enum
    symbol line up more closely with the phrasing of the error messages it is
    associated with.  And fix someone's weak grasp of English grammar in the
    preceding EXPR_KIND_PARTITION_EXPRESSION addition.  Also update an
    incorrect comment in resolve_unique_index_expr (possibly it was correct
    when written, but nowadays transformExpr definitely does reject SRFs here).
    
    Per report from Pavel Stehule --- but this resolves only one of the bugs
    he mentions.
    
    Discussion: https://postgr.es/m/CAFj8pRDxOwPPzpA8i+AQeDQFj7bhVw-dR2==rfWZ3zMGkm568Q@mail.gmail.com
    65b1d767
create_table.out 37.6 KB