Skip to content

Commit 13c843d

Browse files
author
Michael Meskes
committed
Synced parser
1 parent 46dd4db commit 13c843d

File tree

2 files changed

+44
-41
lines changed

2 files changed

+44
-41
lines changed

src/interfaces/ecpg/ChangeLog

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2362,6 +2362,10 @@ Tue, 20 May 2008 17:31:01 +0200
23622362
Wed, 04 Jun 2008 14:22:30 +0200
23632363

23642364
- Added lost symbol SQL to list of allowed variable names.
2365+
2366+
Tue, 24 Jun 2008 13:30:51 +0200
2367+
2368+
- Synced parser.
23652369
- Set pgtypes library version to 3.1.
23662370
- Set compat library version to 3.1.
23672371
- Set ecpg library version to 6.2.

src/interfaces/ecpg/preproc/preproc.y

Lines changed: 40 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.367 2008/06/04 12:23:34 meskes Exp $ */
1+
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.368 2008/06/26 08:04:05 meskes Exp $ */
22

33
/* Copyright comment */
44
%{
@@ -556,15 +556,15 @@ add_typedef(char *name, char * dimension, char * length, enum ECPGttype type_enu
556556
%type <str> target_list target_el alias_clause type_func_name_keyword
557557
%type <str> qualified_name database_name alter_using type_function_name
558558
%type <str> access_method attr_name index_name name func_name opt_restart_seqs
559-
%type <str> file_name AexprConst c_expr ConstTypename var_list
559+
%type <str> file_name AexprConst c_expr ConstTypename var_list
560560
%type <str> a_expr b_expr TruncateStmt CommentStmt OnCommitOption opt_by
561-
%type <str> opt_indirection expr_list extract_list extract_arg
561+
%type <str> opt_indirection expr_list extract_list extract_arg OptSeqOptList
562562
%type <str> position_list substr_list substr_from alter_column_default
563563
%type <str> trim_list in_expr substr_for attrs TableFuncElement
564564
%type <str> Typename SimpleTypename Numeric opt_float DiscardStmt
565565
%type <str> Character character opt_varying opt_charset enum_val_list
566566
%type <str> opt_timezone opt_interval table_ref fetch_direction
567-
%type <str> ConstDatetime AlterDomainStmt AlterSeqStmt alter_rel_cmds
567+
%type <str> ConstDatetime AlterDomainStmt AlterSeqStmt
568568
%type <str> SelectStmt into_clause OptTemp ConstraintAttributeSpec
569569
%type <str> opt_table opt_all sort_clause sortby_list ConstraintAttr
570570
%type <str> sortby qualified_name_list name_list ColId_or_Sconst
@@ -591,8 +591,8 @@ add_typedef(char *name, char * dimension, char * length, enum ECPGttype type_enu
591591
%type <str> VariableSetStmt var_value zone_value VariableShowStmt
592592
%type <str> VariableResetStmt AlterTableStmt from_list overlay_list
593593
%type <str> relation_name OptTableSpace LockStmt opt_lock
594-
%type <str> CreateUserStmt AlterUserStmt CreateSeqStmt OptSeqList
595-
%type <str> OptSeqElem TriggerForSpec TriggerForOpt TriggerForType
594+
%type <str> CreateUserStmt AlterUserStmt CreateSeqStmt SeqOptList
595+
%type <str> SeqOptElem TriggerForSpec TriggerForOpt TriggerForType
596596
%type <str> DropTrigStmt TriggerOneEvent TriggerEvents RuleActionStmt
597597
%type <str> TriggerActionTime CreateTrigStmt DropPLangStmt DropCastStmt
598598
%type <str> CreatePLangStmt TriggerFuncArgs TriggerFuncArg simple_select
@@ -621,7 +621,7 @@ add_typedef(char *name, char * dimension, char * length, enum ECPGttype type_enu
621621
%type <str> handler_name any_name_list any_name opt_as insert_column_list
622622
%type <str> columnref values_clause AllConstVar prep_type_clause ExecuteStmt
623623
%type <str> insert_column_item DropRuleStmt ctext_expr execute_param_clause
624-
%type <str> createfunc_opt_item set_rest alter_rel_cmd
624+
%type <str> createfunc_opt_item set_rest
625625
%type <str> CreateFunctionStmt createfunc_opt_list func_table
626626
%type <str> DropUserStmt copy_from copy_opt_list copy_opt_item
627627
%type <str> opt_oids TableLikeClause key_action opt_definition
@@ -1347,55 +1347,58 @@ DiscardStmt:
13471347

13481348
/*****************************************************************************
13491349
*
1350-
* ALTER [ TABLE | INDEX ] variations
1350+
* ALTER [ TABLE | INDEX | SEQUENCE | VIEW ] variations
13511351
*
13521352
*****************************************************************************/
13531353

13541354
AlterTableStmt:
13551355
ALTER TABLE relation_expr alter_table_cmds
13561356
{ $$ = cat_str(3, make_str("alter table"), $3, $4); }
1357-
| ALTER INDEX relation_expr alter_rel_cmds
1358-
{ $$ = cat_str(3, make_str("alter table"), $3, $4); }
1357+
| ALTER INDEX relation_expr alter_table_cmds
1358+
{ $$ = cat_str(3, make_str("alter index"), $3, $4); }
1359+
| ALTER SEQUENCE relation_expr alter_table_cmds
1360+
{ $$ = cat_str(3, make_str("alter sequence"), $3, $4); }
1361+
| ALTER VIEW relation_expr alter_table_cmds
1362+
{ $$ = cat_str(3, make_str("alter view"), $3, $4); }
13591363
;
13601364

1361-
/* Subcommands that are for ALTER TABLE only */
13621365
alter_table_cmds:
13631366
alter_table_cmd { $$ = $1; }
13641367
| alter_table_cmds ',' alter_table_cmd { $$ = cat_str(3, $1, make_str(","), $3); }
13651368
;
13661369

13671370
alter_table_cmd:
1371+
/* ALTER TABLE <name> ADD [COLUMN] <coldef> */
13681372
ADD_P opt_column columnDef
1369-
/* ALTER TABLE <relation> ADD [COLUMN] <coldef> */
13701373
{ $$ = cat_str(3, make_str("add"), $2, $3); }
1371-
/* ALTER TABLE <relation> ALTER [COLUMN] <colname> {SET DEFAULT <expr>|DROP DEFAULT} */
1374+
/* ALTER TABLE <name> ALTER [COLUMN] <colname> {SET DEFAULT <expr>|DROP DEFAULT} */
13721375
| ALTER opt_column ColId alter_column_default
13731376
{ $$ = cat_str(4, make_str("alter"), $2, $3, $4); }
1374-
/* ALTER TABLE <relation> ALTER [COLUMN] <colname> DROP NOT NULL */
1377+
/* ALTER TABLE <name> ALTER [COLUMN] <colname> DROP NOT NULL */
13751378
| ALTER opt_column ColId DROP NOT NULL_P
13761379
{ $$ = cat_str(4, make_str("alter"), $2, $3, make_str("drop not null")); }
1377-
/* ALTER TABLE <relation> ALTER [COLUMN] <colname> SET NOT NULL */
1380+
/* ALTER TABLE <name> ALTER [COLUMN] <colname> SET NOT NULL */
13781381
| ALTER opt_column ColId SET NOT NULL_P
13791382
{ $$ = cat_str(4, make_str("alter"), $2, $3, make_str("set not null")); }
1380-
/* ALTER TABLE <relation> ALTER [COLUMN] <colname> SET STATISTICS <IntegerOnly> */
1383+
/* ALTER TABLE <name> ALTER [COLUMN] <colname> SET STATISTICS <IntegerOnly> */
13811384
| ALTER opt_column ColId SET STATISTICS PosIntConst
13821385
{ $$ = cat_str(5, make_str("alter"), $2, $3, make_str("set statistics"), $6); }
1383-
/* ALTER TABLE <relation> ALTER [COLUMN] <colname> SET STORAGE <storagemode> */
1386+
/* ALTER TABLE <name> ALTER [COLUMN] <colname> SET STORAGE <storagemode> */
13841387
| ALTER opt_column ColId SET STORAGE ColId
13851388
{ $$ = cat_str(5, make_str("alter"), $2, $3, make_str("set storage"), $6); }
1386-
/* ALTER TABLE <relation> DROP [COLUMN] <colname> {RESTRICT|CASCADE} */
1389+
/* ALTER TABLE <name> DROP [COLUMN] <colname> {RESTRICT|CASCADE} */
13871390
| DROP opt_column ColId opt_drop_behavior
13881391
{ $$ = cat_str(4, make_str("drop"), $2, $3, $4); }
1389-
/* ALTER TABLE <relation> ALTER [COLUMN] <colname> TYPE <typename> [ USING <expression> ] */
1392+
/* ALTER TABLE <name> ALTER [COLUMN] <colname> TYPE <typename> [ USING <expression> ] */
13901393
| ALTER opt_column ColId TYPE_P Typename alter_using
13911394
{ $$ = cat_str(6, make_str("alter"), $2, $3, make_str("type"), $5, $6); }
1392-
/* ALTER TABLE <relation> ADD CONSTRAINT ... */
1395+
/* ALTER TABLE <name> ADD CONSTRAINT ... */
13931396
| ADD_P TableConstraint
13941397
{ $$ = cat_str(2, make_str("add"), $2); }
1395-
/* ALTER TABLE <relation> DROP CONSTRAINT ... */
1398+
/* ALTER TABLE <name> DROP CONSTRAINT ... */
13961399
| DROP CONSTRAINT name opt_drop_behavior
13971400
{ $$ = cat_str(3, make_str("drop constraint"), $3, $4); }
1398-
/* ALTER TABLE <relation> SET WITHOUT OIDS */
1401+
/* ALTER TABLE <name> SET WITHOUT OIDS */
13991402
| SET WITHOUT OIDS
14001403
{ $$ = make_str("set without oids"); }
14011404
/* ALTER TABLE <name> CLUSTER ON <indexname> */
@@ -1446,20 +1449,10 @@ alter_table_cmd:
14461449
/* ALTER TABLE <name> NO INHERITS <parent> */
14471450
| NO INHERIT qualified_name
14481451
{ $$ = cat2_str(make_str("no inherit"), $3); }
1449-
| alter_rel_cmd
1450-
{ $$ = $1; }
1451-
;
1452-
1453-
alter_rel_cmds: alter_rel_cmd { $$ = $1; }
1454-
| alter_rel_cmds ',' alter_rel_cmd { $$ = cat_str(3, $1, make_str(","), $3); }
1455-
;
1456-
1457-
/* Subcommands that are for ALTER TABLE or ALTER INDEX */
1458-
alter_rel_cmd:
1459-
/* ALTER [TABLE|INDEX] <name> OWNER TO RoleId */
1460-
OWNER TO RoleId
1452+
/* ALTER <name> OWNER TO RoleId */
1453+
| OWNER TO RoleId
14611454
{ $$ = cat2_str(make_str("owner to"), $3); }
1462-
/* ALTER [TABLE|INDEX] <name> SET TABLESPACE <tablespacename> */
1455+
/* ALTER <name> SET TABLESPACE <tablespacename> */
14631456
| SET TABLESPACE name
14641457
{ $$ = cat2_str(make_str("set tablespace"), $3); }
14651458
| SET definition
@@ -1830,19 +1823,23 @@ CreateAsElement: ColId { $$ = $1; }
18301823
*
18311824
*****************************************************************************/
18321825

1833-
CreateSeqStmt: CREATE OptTemp SEQUENCE qualified_name OptSeqList
1826+
CreateSeqStmt: CREATE OptTemp SEQUENCE qualified_name OptSeqOptList
18341827
{ $$ = cat_str(5, make_str("create"), $2, make_str("sequence"), $4, $5); }
18351828
;
18361829

1837-
AlterSeqStmt: ALTER SEQUENCE qualified_name OptSeqList
1830+
AlterSeqStmt: ALTER SEQUENCE relation_expr SeqOptList
18381831
{ $$ = cat_str(3,make_str("alter sequence"), $3, $4); }
18391832
;
18401833

1841-
OptSeqList: OptSeqList OptSeqElem { $$ = cat2_str($1, $2); }
1842-
| /*EMPTY*/ { $$ = EMPTY; }
1834+
OptSeqOptList: SeqOptList { $$ = $1; }
1835+
| /*EMPTY*/ { $$ = EMPTY; }
1836+
;
1837+
1838+
SeqOptList: SeqOptElem { $$ = $1; }
1839+
| SeqOptList SeqOptElem { $$ = cat2_str($1, $2); }
18431840
;
18441841

1845-
OptSeqElem: CACHE NumConst
1842+
SeqOptElem: CACHE NumConst
18461843
{ $$ = cat2_str(make_str("cache"), $2); }
18471844
| CYCLE
18481845
{ $$ = make_str("cycle"); }
@@ -2841,6 +2838,8 @@ RenameStmt: ALTER AGGREGATE func_name aggr_args RENAME TO name
28412838
{ $$ = cat_str(4, make_str("alter schema"), $3, make_str("rename to"), $6); }
28422839
| ALTER TABLE relation_expr RENAME TO name
28432840
{ $$ = cat_str(4, make_str("alter table"), $3, make_str("rename to"), $6); }
2841+
| ALTER TABLE relation_expr SET SCHEMA name
2842+
{ $$ = cat_str(4, make_str("alter table"), $3, make_str("set schema"), $6); }
28442843
| ALTER SEQUENCE relation_expr RENAME TO name
28452844
{ $$ = cat_str(4, make_str("alter sequence"), $3, make_str("rename to"), $6); }
28462845
| ALTER VIEW relation_expr RENAME TO name
@@ -2886,7 +2885,7 @@ AlterObjectSchemaStmt:
28862885
{ $$ = cat_str(4, make_str("alter function"), $3, make_str("set schema"), $6); }
28872886
| ALTER SEQUENCE relation_expr SET SCHEMA name
28882887
{ $$ = cat_str(4, make_str("alter sequence"), $3, make_str("set schema"), $6); }
2889-
| ALTER TABLE relation_expr SET SCHEMA name
2888+
| ALTER VIEW relation_expr SET SCHEMA name
28902889
{ $$ = cat_str(4, make_str("alter sequence"), $3, make_str("set schema"), $6); }
28912890
| ALTER TYPE_P any_name SET SCHEMA name
28922891
{ $$ = cat_str(4, make_str("alter type"), $3, make_str("set schema"), $6); }

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy