From 3558f120f8697e63d97145706151778bb176ba7b Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 26 Nov 2023 16:40:22 -0500 Subject: [PATCH] Doc: list AT TIME ZONE and COLLATE in operator precedence table. These constructs have precedence, but we forgot to list them. In HEAD, mention AT LOCAL as well as AT TIME ZONE. Per gripe from Shay Rojansky. Discussion: https://postgr.es/m/CADT4RqBPdbsZW7HS1jJP319TMRHs1hzUiP=iRJYR6UqgHCrgNQ@mail.gmail.com --- doc/src/sgml/syntax.sgml | 12 ++++++++++++ src/backend/parser/gram.y | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/doc/src/sgml/syntax.sgml b/doc/src/sgml/syntax.sgml index 37817d06384..4dfbbd08626 100644 --- a/doc/src/sgml/syntax.sgml +++ b/doc/src/sgml/syntax.sgml @@ -1065,6 +1065,18 @@ CAST ( 'string' AS type ) unary plus, unary minus + + COLLATE + left + collation selection + + + + AT + left + AT TIME ZONE, AT LOCAL + + ^ left diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index c224df4eccc..8c00b119ec4 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -858,7 +858,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); %left '*' '/' '%' %left '^' /* Unary Operators */ -%left AT /* sets precedence for AT TIME ZONE */ +%left AT /* sets precedence for AT TIME ZONE, AT LOCAL */ %left COLLATE %right UMINUS %left '[' ']'