From 6e03d476c93458203c1c0307abaf9068d5793aeb Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 9 Aug 2015 19:01:04 -0400 Subject: [PATCH] Remove gram.y's precedence declaration for OVERLAPS. The allowed syntax for OVERLAPS, viz "row OVERLAPS row", is sufficiently constrained that we don't actually need a precedence declaration for OVERLAPS; indeed removing this declaration does not change the generated gram.c file at all. Let's remove it to avoid confusion about whether OVERLAPS has precedence or not. If we ever generalize what we allow for OVERLAPS, we might need to put back a precedence declaration for it, but we might want some other level than what it has today --- and leaving the declaration there would just risk confusion about whether that would be an incompatible change. Likewise, remove OVERLAPS from the documentation's precedence table. Per discussion with Noah Misch. Back-patch to 9.5 where we hacked up some nearby precedence decisions. --- doc/src/sgml/syntax.sgml | 6 ------ src/backend/parser/gram.y | 1 - 2 files changed, 7 deletions(-) diff --git a/doc/src/sgml/syntax.sgml b/doc/src/sgml/syntax.sgml index 140b3bd12e..47512f73df 100644 --- a/doc/src/sgml/syntax.sgml +++ b/doc/src/sgml/syntax.sgml @@ -1069,12 +1069,6 @@ SELECT (5 !) - 6; all other native and user-defined operators - - OVERLAPS - - time interval overlap - - BETWEEN IN LIKE ILIKE SIMILAR diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 4e02f7d73f..3b5cef4ff4 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -673,7 +673,6 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); %nonassoc '<' '>' '=' LESS_EQUALS GREATER_EQUALS NOT_EQUALS %nonassoc BETWEEN IN_P LIKE ILIKE SIMILAR NOT_LA %nonassoc ESCAPE /* ESCAPE must be just above LIKE/ILIKE/SIMILAR */ -%nonassoc OVERLAPS %left POSTFIXOP /* dummy for postfix Op rules */ /* * To support target_el without AS, we must give IDENT an explicit priority