diff options
Diffstat (limited to 'src/backend/parser/gram.y')
-rw-r--r-- | src/backend/parser/gram.y | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index 435c0451cae..21b8897038f 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -533,7 +533,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); */ %token <str> IDENT FCONST SCONST BCONST XCONST Op %token <ival> ICONST PARAM -%token TYPECAST DOT_DOT COLON_EQUALS +%token TYPECAST DOT_DOT COLON_EQUALS EQUALS_GREATER /* * If you want to make any keyword changes, update the keyword table in @@ -12567,6 +12567,15 @@ func_arg_expr: a_expr na->location = @1; $$ = (Node *) na; } + | param_name EQUALS_GREATER a_expr + { + NamedArgExpr *na = makeNode(NamedArgExpr); + na->name = $1; + na->arg = (Expr *) $3; + na->argnumber = -1; /* until determined */ + na->location = @1; + $$ = (Node *) na; + } ; type_list: Typename { $$ = list_make1($1); } |