pgsql: Fix unexpected side-effects of operator_precedence_warning. - Mailing list pgsql-committers

From Tom Lane
Subject pgsql: Fix unexpected side-effects of operator_precedence_warning.
Date
Msg-id E1atRbH-0006O4-NP@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
Fix unexpected side-effects of operator_precedence_warning.

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>

Branch
------
REL9_5_STABLE

Details
-------
http://git.postgresql.org/pg/commitdiff/81deadd317fca3f3230af2468ac29b7c36825fa3

Modified Files
--------------
src/backend/parser/parse_expr.c | 34 +++++++++++++++++++++++++++++-----
1 file changed, 29 insertions(+), 5 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Fix planner failure with full join in RHS of left join.
Next
From: Tom Lane
Date:
Subject: pgsql: Fix unexpected side-effects of operator_precedence_warning.