• Tom Lane's avatar
    Fix unexpected side-effects of operator_precedence_warning. · abb16465
    Tom Lane authored
    The implementation of that feature involves injecting nodes into the
    raw parsetree where explicit parentheses appear.  Various places in
    parse_expr.c that test to see "is this child node of type Foo" need to
    look through such nodes, else we'll get different behavior when
    operator_precedence_warning is on than when it is off.  Note that we only
    need to handle this when testing untransformed child nodes, since the
    AEXPR_PAREN nodes will be gone anyway after transformExprRecurse.
    
    Per report from Scott Ribe and additional code-reading.  Back-patch
    to 9.5 where this feature was added.
    
    Report: <ED37E303-1B0A-4CD8-8E1E-B9C4C2DD9A17@elevated-dev.com>
    abb16465
parse_expr.c 88 KB