Re: Precedence of standard comparison operators - Mailing list pgsql-hackers

From Tom Lane
Subject Re: Precedence of standard comparison operators
Date
Msg-id 27182.1424461301@sss.pgh.pa.us
Whole thread Raw
In response to Re: Precedence of standard comparison operators  (Peter Eisentraut <peter_e@gmx.net>)
Responses Re: Precedence of standard comparison operators  (Peter Eisentraut <peter_e@gmx.net>)
List pgsql-hackers
Peter Eisentraut <peter_e@gmx.net> writes:
> I think we should try to do it, but we need a way for users to see what
> is going on.  If we just put into the release notes, "the precedences of
>> = and <= have been changed, but we don't expect this to cause many
> problems", there might be wide-spread panic.

> One way would be to have a knob that warns/logs/debugs when it sees an
> <= or >= call in a place that would change meaning.  Perhaps in
> transformAExprOp().  This might be an expensive check, but it wouldn't
> have to be on all the time.  We could also add a flag to the A_Expr node
> that remember whether the expression was parenthesized, so that users
> could update their code with parentheses to shut the warning up.

> I think this would be a standard_conforming_strings-like transition.

We had this discussion back in 2007 :-(.

I don't believe there is any practical way for us to generate useful
warnings here; as I said to Kevin, I don't think that Bison exposes
sufficient information to detect when a parsing decision was made
differently than before because of precedence.  If there's going to be
an insistence on that then I suspect we'll spend another 8 years not
conforming to spec.
        regards, tom lane



pgsql-hackers by date:

Previous
From: Heikki Linnakangas
Date:
Subject: Re: INSERT ... ON CONFLICT {UPDATE | IGNORE} 2.0
Next
From: Tomas Vondra
Date:
Subject: failures with tuplesort and ordered set aggregates (due to 5cefbf5a6c44)