diff options
Diffstat (limited to 'src/backend/parser')
| -rw-r--r-- | src/backend/parser/gram.y | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/backend/parser/gram.y b/src/backend/parser/gram.y index d711f9a7368..28f62de97e5 100644 --- a/src/backend/parser/gram.y +++ b/src/backend/parser/gram.y @@ -309,6 +309,7 @@ static Node *makeRecursiveViewSelect(char *relname, List *aliases, Node *query); %type <str> vac_analyze_option_name %type <defelt> vac_analyze_option_elem %type <list> vac_analyze_option_list +%type <node> vac_analyze_option_arg %type <boolean> opt_or_replace opt_grant_grant_option opt_grant_admin_option opt_nowait opt_if_exists opt_with_data @@ -10543,9 +10544,9 @@ analyze_keyword: ; vac_analyze_option_elem: - vac_analyze_option_name + vac_analyze_option_name vac_analyze_option_arg { - $$ = makeDefElem($1, NULL, @1); + $$ = makeDefElem($1, $2, @1); } ; @@ -10554,6 +10555,11 @@ vac_analyze_option_name: | analyze_keyword { $$ = "analyze"; } ; +vac_analyze_option_arg: + opt_boolean_or_string { $$ = (Node *) makeString($1); } + | /* EMPTY */ { $$ = NULL; } + ; + opt_analyze: analyze_keyword { $$ = true; } | /*EMPTY*/ { $$ = false; } |
