On 2023-Nov-27, Tom Lane wrote:
> I don't like the existing coding for more reasons than just
> underdocumentation. Global assignment of precedence is a really,
> really dangerous tool for solving ambiguous-grammar problems, because
> it can mask problems unrelated to the one you think you are solving:
> basically, it eliminates bison's complaints about grammar ambiguities
> related to the token you mark. (Commits 12b716457 and 28a61fc6c are
> relevant here.) Attaching precedence to individual productions is
> far safer, because it won't have any effect that extends beyond that
> production. You still need a precedence attached to the lookahead
> token; but I think we should try very hard to not assign a precedence
> different from IDENT's to any unreserved keywords.
Ooh, this is very useful, thank you.
> After a bit of fooling around I found a patch that seems to meet
> that criterion; attached.
It looks good and passes tests, including the ecpg ones.
--
Álvaro Herrera Breisgau, Deutschland — https://www.EnterpriseDB.com/
"Entristecido, Wutra (canción de Las Barreras)
echa a Freyr a rodar
y a nosotros al mar"