Skip to content

Commit 1aca1cd

Browse files
author
Michael Meskes
committed
- Synced parser and keyword list
- Renamed update test so it hopefully runs on Vista
1 parent 5b7cf08 commit 1aca1cd

File tree

10 files changed

+119
-64
lines changed

10 files changed

+119
-64
lines changed

src/interfaces/ecpg/ChangeLog

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2188,4 +2188,9 @@ Fr 27. Apr 08:55:25 CEST 2007
21882188

21892189
- Inlined two functions to get rid of va_list problems on some
21902190
architectures.
2191+
2192+
Th 10. Mai 09:42:42 CEST 2007
2193+
2194+
- Synced parser and keyword list
2195+
- Renamed update test so it hopefully runs on Vista
21912196
- Set ecpg version to 4.3.1.

src/interfaces/ecpg/preproc/c_keywords.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
* keywords.c
44
* lexical token lookup for reserved words in postgres embedded SQL
55
*
6-
* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/c_keywords.c,v 1.19 2006/07/30 16:28:58 meskes Exp $
6+
* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/c_keywords.c,v 1.20 2007/05/10 09:53:16 meskes Exp $
77
* §
88
*-------------------------------------------------------------------------
99
*/
@@ -27,7 +27,7 @@ static ScanKeyword ScanKeywords[] = {
2727
{"bool", SQL_BOOL},
2828
{"char", CHAR_P},
2929
{"const", S_CONST},
30-
{"enum", SQL_ENUM},
30+
{"enum", ENUM_P},
3131
{"extern", S_EXTERN},
3232
{"float", FLOAT_P},
3333
{"hour", HOUR_P},

src/interfaces/ecpg/preproc/ecpg_keywords.c

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
* lexical token lookup for reserved words in postgres embedded SQL
55
*
66
* IDENTIFICATION
7-
* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg_keywords.c,v 1.33 2007/03/17 19:25:23 meskes Exp $
7+
* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg_keywords.c,v 1.34 2007/05/10 09:53:16 meskes Exp $
88
*
99
*-------------------------------------------------------------------------
1010
*/
@@ -40,7 +40,6 @@ static ScanKeyword ScanKeywords[] = {
4040
{"describe", SQL_DESCRIBE},
4141
{"descriptor", SQL_DESCRIPTOR},
4242
{"disconnect", SQL_DISCONNECT},
43-
{"enum", SQL_ENUM},
4443
{"found", SQL_FOUND},
4544
{"free", SQL_FREE},
4645
{"go", SQL_GO},

src/interfaces/ecpg/preproc/keywords.c

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88
*
99
*
1010
* IDENTIFICATION
11-
* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/keywords.c,v 1.78 2007/03/17 19:25:23 meskes Exp $
11+
* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/keywords.c,v 1.79 2007/05/10 09:53:16 meskes Exp $
1212
*
1313
*-------------------------------------------------------------------------
1414
*/
@@ -39,6 +39,7 @@ static ScanKeyword ScanKeywords[] = {
3939
{"all", ALL},
4040
{"also", ALSO},
4141
{"alter", ALTER},
42+
{"always", ALWAYS},
4243
{"analyse", ANALYSE}, /* British spelling */
4344
{"analyze", ANALYZE},
4445
{"and", AND},
@@ -120,6 +121,7 @@ static ScanKeyword ScanKeywords[] = {
120121
{"delimiters", DELIMITERS},
121122
{"desc", DESC},
122123
{"disable", DISABLE_P},
124+
{"discard", DISCARD},
123125
{"distinct", DISTINCT},
124126
{"do", DO},
125127
{"document", DOCUMENT_P},
@@ -132,6 +134,7 @@ static ScanKeyword ScanKeywords[] = {
132134
{"encoding", ENCODING},
133135
{"encrypted", ENCRYPTED},
134136
{"end", END_P},
137+
{"enum", ENUM_P},
135138
{"escape", ESCAPE},
136139
{"except", EXCEPT},
137140
{"excluding", EXCLUDING},
@@ -261,6 +264,8 @@ static ScanKeyword ScanKeywords[] = {
261264
{"owner", OWNER},
262265
{"partial", PARTIAL},
263266
{"password", PASSWORD},
267+
{"placing", PLACING},
268+
{"plans", PLANS},
264269
{"position", POSITION},
265270
{"precision", PRECISION},
266271
{"prepare", PREPARE},
@@ -283,6 +288,7 @@ static ScanKeyword ScanKeywords[] = {
283288
{"rename", RENAME},
284289
{"repeatable", REPEATABLE},
285290
{"replace", REPLACE},
291+
{"replica", REPLICA},
286292
{"reset", RESET},
287293
{"restart", RESTART},
288294
{"restrict", RESTRICT},

src/interfaces/ecpg/preproc/preproc.y

Lines changed: 69 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.342 2007/03/27 03:25:28 tgl Exp $ */
1+
/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/preproc.y,v 1.343 2007/05/10 09:53:17 meskes Exp $ */
22

33
/* Copyright comment */
44
%{
@@ -349,7 +349,7 @@ add_additional_variables(char *name, bool insert)
349349
SQL_CONTINUE SQL_COUNT SQL_CURRENT SQL_DATA
350350
SQL_DATETIME_INTERVAL_CODE
351351
SQL_DATETIME_INTERVAL_PRECISION SQL_DESCRIBE
352-
SQL_DESCRIPTOR SQL_DISCONNECT SQL_ENUM SQL_FOUND
352+
SQL_DESCRIPTOR SQL_DISCONNECT SQL_FOUND
353353
SQL_FREE SQL_GO SQL_GOTO SQL_IDENTIFIED
354354
SQL_INDICATOR SQL_KEY_MEMBER SQL_LENGTH
355355
SQL_LONG SQL_NULLABLE SQL_OCTET_LENGTH
@@ -371,7 +371,7 @@ add_additional_variables(char *name, bool insert)
371371

372372
/* ordinary key words in alphabetical order */
373373
%token <keyword> ABORT_P ABSOLUTE_P ACCESS ACTION ADD_P ADMIN AFTER
374-
AGGREGATE ALL ALSO ALTER ANALYSE ANALYZE AND ANY ARRAY AS ASC
374+
AGGREGATE ALL ALSO ALTER ALWAYS ANALYSE ANALYZE AND ANY ARRAY AS ASC
375375
ASSERTION ASSIGNMENT ASYMMETRIC AT AUTHORIZATION
376376

377377
BACKWARD BEFORE BEGIN_P BETWEEN BIGINT BINARY BIT
@@ -387,9 +387,9 @@ add_additional_variables(char *name, bool insert)
387387

388388
DATABASE DAY_P DEALLOCATE DEC DECIMAL_P DECLARE DEFAULT DEFAULTS
389389
DEFERRABLE DEFERRED DEFINER DELETE_P DELIMITER DELIMITERS
390-
DESC DISABLE_P DISTINCT DO DOCUMENT_P DOMAIN_P DOUBLE_P DROP
390+
DESC DISABLE_P DISCARD DISTINCT DO DOCUMENT_P DOMAIN_P DOUBLE_P DROP
391391

392-
EACH ELSE ENABLE_P ENCODING ENCRYPTED END_P ESCAPE EXCEPT EXCLUSIVE EXCLUDING
392+
EACH ELSE ENABLE_P ENCODING ENCRYPTED END_P ENUM_P ESCAPE EXCEPT EXCLUSIVE EXCLUDING
393393
EXECUTE EXISTS EXPLAIN EXTERNAL EXTRACT
394394

395395
FALSE_P FAMILY FETCH FIRST_P FLOAT_P FOR FORCE FOREIGN FORWARD FREEZE FROM
@@ -421,15 +421,15 @@ add_additional_variables(char *name, bool insert)
421421
OBJECT_P OF OFF OFFSET OIDS OLD ON ONLY OPERATOR OPTION OR ORDER
422422
OUT_P OUTER_P OVERLAPS OVERLAY OWNED OWNER
423423

424-
PARTIAL PASSWORD PLACING POSITION
424+
PARTIAL PASSWORD PLACING PLANS POSITION
425425
PRECISION PRESERVE PREPARE PREPARED PRIMARY
426426
PRIOR PRIVILEGES PROCEDURAL PROCEDURE
427427

428428
QUOTE
429429

430430
READ REAL REASSIGN RECHECK REFERENCES REINDEX RELATIVE_P RELEASE RENAME
431-
REPEATABLE REPLACE RESET RESTART RESTRICT RETURNING RETURNS REVOKE RIGHT
432-
ROLE ROLLBACK ROW ROWS RULE
431+
REPEATABLE REPLACE REPLICA RESET RESTART RESTRICT RETURNING RETURNS REVOKE
432+
RIGHT ROLE ROLLBACK ROW ROWS RULE
433433

434434
SAVEPOINT SCHEMA SCROLL SECOND_P SECURITY SELECT SEQUENCE
435435
SERIALIZABLE SESSION SESSION_USER SET SETOF SHARE
@@ -504,7 +504,7 @@ add_additional_variables(char *name, bool insert)
504504
%type <str> key_match ColLabel SpecialRuleRelation ColId columnDef
505505
%type <str> ColConstraint ColConstraintElem drop_type Bconst Iresult
506506
%type <str> TableConstraint OptTableElementList Xconst opt_transaction
507-
%type <str> ConstraintElem key_actions ColQualList
507+
%type <str> ConstraintElem key_actions ColQualList cluster_index_specification
508508
%type <str> target_list target_el alias_clause type_func_name_keyword
509509
%type <str> qualified_name database_name alter_using type_function_name
510510
%type <str> access_method attr_name index_name name func_name
@@ -513,8 +513,8 @@ add_additional_variables(char *name, bool insert)
513513
%type <str> opt_indirection expr_list extract_list extract_arg
514514
%type <str> position_list substr_list substr_from alter_column_default
515515
%type <str> trim_list in_expr substr_for attrs TableFuncElement
516-
%type <str> Typename SimpleTypename Numeric opt_float
517-
%type <str> Character character opt_varying opt_charset
516+
%type <str> Typename SimpleTypename Numeric opt_float DiscardStmt
517+
%type <str> Character character opt_varying opt_charset enum_val_list
518518
%type <str> opt_timezone opt_interval table_ref fetch_direction
519519
%type <str> ConstDatetime AlterDomainStmt AlterSeqStmt alter_rel_cmds
520520
%type <str> SelectStmt into_clause OptTemp ConstraintAttributeSpec
@@ -736,6 +736,7 @@ stmt: AlterDatabaseStmt { output_statement($1, 0, connection); }
736736
| DeclareCursorStmt { output_simple_statement($1); }
737737
| DefineStmt { output_statement($1, 0, connection); }
738738
| DeleteStmt { output_statement($1, 1, connection); }
739+
| DiscardStmt { output_statement($1, 1, connection); }
739740
| DropAssertStmt { output_statement($1, 0, connection); }
740741
| DropCastStmt { output_statement($1, 0, connection); }
741742
| DropGroupStmt { output_statement($1, 0, connection); }
@@ -1278,6 +1279,12 @@ constraints_set_mode: DEFERRED { $$ = make_str("deferred"); }
12781279
CheckPointStmt: CHECKPOINT { $$= make_str("checkpoint"); }
12791280
;
12801281

1282+
DiscardStmt:
1283+
DISCARD ALL { $$ = make_str("discard all"); }
1284+
| DISCARD TEMP { $$ = make_str("discard temp"); }
1285+
| DISCARD TEMPORARY { $$ = make_str("discard temporary"); }
1286+
| DISCARD PLANS { $$ = make_str("discard plans"); }
1287+
;
12811288

12821289
/*****************************************************************************
12831290
*
@@ -1341,6 +1348,12 @@ alter_table_cmd:
13411348
/* ALTER TABLE <name> ENABLE TRIGGER <trig> */
13421349
| ENABLE_P TRIGGER name
13431350
{ $$ = cat2_str(make_str("enable trigger"), $3); }
1351+
/* ALTER TABLE <name> ENABLE ALWAYS TRIGGER <trig> */
1352+
| ENABLE_P ALWAYS TRIGGER name
1353+
{ $$ = cat2_str(make_str("enable always trigger"), $4); }
1354+
/* ALTER TABLE <name> ENABLE REPLICA TRIGGER <trig> */
1355+
| ENABLE_P REPLICA TRIGGER name
1356+
{ $$ = cat2_str(make_str("enable replica trigger"), $4); }
13441357
/* ALTER TABLE <name> ENABLE TRIGGER ALL */
13451358
| ENABLE_P TRIGGER ALL
13461359
{ $$ = make_str("enable trigger all"); }
@@ -1356,6 +1369,18 @@ alter_table_cmd:
13561369
/* ALTER TABLE <name> DISABLE TRIGGER USER */
13571370
| DISABLE_P TRIGGER USER
13581371
{ $$ = make_str("disable trigger user"); }
1372+
/* ALTER TABLE <name> ENABLE RULE <rule> */
1373+
| ENABLE_P RULE name
1374+
{ $$ = cat2_str(make_str("enable rule"), $3); }
1375+
/* ALTER TABLE <name> ENABLE ALWAYS RULE <rule> */
1376+
| ENABLE_P ALWAYS RULE name
1377+
{ $$ = cat2_str(make_str("enable always rule"), $4); }
1378+
/* ALTER TABLE <name> ENABLE REPLICA RULE <rule> */
1379+
| ENABLE_P REPLICA RULE name
1380+
{ $$ = cat2_str(make_str("enable replica rule"), $4); }
1381+
/* ALTER TABLE <name> DISABLE RULE <rule> */
1382+
| DISABLE_P RULE name
1383+
{ $$ = cat2_str(make_str("disable rule"), $3); }
13591384
/* ALTER TABLE <name> ALTER INHERITS ADD <parent> */
13601385
| INHERIT qualified_name
13611386
{ $$ = cat2_str(make_str("inherit"), $2); }
@@ -1407,6 +1432,8 @@ alter_using: USING a_expr { $$ = cat2_str(make_str("using"), $2); }
14071432

14081433
ClosePortalStmt: CLOSE name
14091434
{ $$ = cat2_str(make_str("close"), $2); }
1435+
| CLOSE ALL
1436+
{ $$ = make_str("close all"); }
14101437
;
14111438

14121439
CopyStmt: COPY opt_binary qualified_name opt_oids copy_from
@@ -2009,6 +2036,8 @@ DefineStmt: CREATE AGGREGATE func_name aggr_args definition
20092036
{ $$ = cat2_str(make_str("create type"), $3); }
20102037
| CREATE TYPE_P any_name AS '(' TableFuncElementList ')'
20112038
{ $$ = cat_str(5, make_str("create type"), $3, make_str("as ("), $6, make_str(")")); }
2039+
| CREATE TYPE_P any_name AS ENUM_P '(' enum_val_list ')'
2040+
{ $$ = cat_str(5, make_str("create type"), $3, make_str("as enum ("), $7, make_str(")")); }
20122041
;
20132042

20142043
definition: '(' def_list ')'
@@ -2044,6 +2073,9 @@ old_aggr_list: old_aggr_elem { $$ = $1; }
20442073
old_aggr_elem: ident '=' def_arg { $$ = cat_str(3, $1, make_str("="), $3); }
20452074
;
20462075

2076+
enum_val_list: StringConst { $$ = $1; }
2077+
| enum_val_list ',' StringConst { $$ = cat_str(3, $1, make_str(","), $3);}
2078+
;
20472079

20482080
CreateOpClassStmt: CREATE OPERATOR CLASS any_name opt_default FOR TYPE_P Typename
20492081
USING access_method opt_opfamily AS opclass_item_list
@@ -2688,8 +2720,8 @@ RenameStmt: ALTER AGGREGATE func_name aggr_args RENAME TO name
26882720
{ $$ = cat_str(5, make_str("alter function"), $3, $4, make_str("rename to"), $7); }
26892721
| ALTER GROUP_P RoleId RENAME TO RoleId
26902722
{ $$ = cat_str(4, make_str("alter group"), $3, make_str("rename to"), $6); }
2691-
| ALTER LANGUAGE name RENAME TO name
2692-
{ $$ = cat_str(4, make_str("alter language"), $3, make_str("rename to"), $6); }
2723+
| ALTER opt_procedural LANGUAGE name RENAME TO name
2724+
{ $$ = cat_str(6, make_str("alter"), $2, make_str("language"), $4, make_str("rename to"), $7); }
26932725
| ALTER OPERATOR CLASS any_name USING access_method RENAME TO name
26942726
{ $$ = cat_str(6, make_str("alter operator class"), $4, make_str("using"), $6, make_str("rename to"), $9); }
26952727
| ALTER OPERATOR FAMILY any_name USING access_method RENAME TO name
@@ -2751,6 +2783,8 @@ AlterOwnerStmt: ALTER AGGREGATE func_name aggr_args OWNER TO RoleId
27512783
{ $$ = cat_str(4, make_str("alter domain"), $3, make_str("owner to"), $6); }
27522784
| ALTER FUNCTION func_name func_args OWNER TO RoleId
27532785
{ $$ = cat_str(5, make_str("alter function"), $3, $4, make_str("owner to"), $7); }
2786+
| ALTER opt_procedural LANGUAGE name OWNER TO RoleId
2787+
{ $$ = cat_str(6, make_str("alter"), $2, make_str("language"), $4, make_str("owner to"), $7); }
27542788
| ALTER OPERATOR any_operator '(' oper_argtypes ')' OWNER TO RoleId
27552789
{ $$ = cat_str(6, make_str("alter operator"), $3, make_str("("), $5, make_str(") owner to"), $9); }
27562790
| ALTER OPERATOR CLASS any_name USING access_method OWNER TO RoleId
@@ -2831,15 +2865,15 @@ DropRuleStmt: DROP RULE name ON qualified_name opt_drop_behavior
28312865
*
28322866
*****************************************************************************/
28332867

2834-
NotifyStmt: NOTIFY qualified_name
2868+
NotifyStmt: NOTIFY ColId
28352869
{ $$ = cat2_str(make_str("notify"), $2); }
28362870
;
28372871

2838-
ListenStmt: LISTEN qualified_name
2872+
ListenStmt: LISTEN ColId
28392873
{ $$ = cat2_str(make_str("listen"), $2); }
28402874
;
28412875

2842-
UnlistenStmt: UNLISTEN qualified_name
2876+
UnlistenStmt: UNLISTEN ColId
28432877
{ $$ = cat2_str(make_str("unlisten"), $2); }
28442878
| UNLISTEN '*'
28452879
{ $$ = make_str("unlisten *"); }
@@ -3075,14 +3109,18 @@ CreateConversionStmt:
30753109
*
30763110
*****************************************************************************/
30773111

3078-
ClusterStmt: CLUSTER index_name ON qualified_name
3079-
{ $$ = cat_str(4, make_str("cluster"), $2, make_str("on"), $4); }
3080-
| CLUSTER qualified_name
3081-
{ $$ = cat2_str(make_str("cluster"), $2); }
3112+
ClusterStmt: CLUSTER qualified_name cluster_index_specification
3113+
{ $$ = cat_str(3,make_str("cluster"), $2, $3); }
30823114
| CLUSTER
30833115
{ $$ = make_str("cluster"); }
3116+
| CLUSTER qualified_name ON qualified_name
3117+
{ $$ = cat_str(4, make_str("cluster"), $2, make_str("on"), $4); }
30843118
;
30853119

3120+
cluster_index_specification:
3121+
USING index_name { $$ = cat2_str(make_str("using"), $2); }
3122+
| /*EMPTY*/ { $$ = EMPTY; }
3123+
;
30863124

30873125
/*****************************************************************************
30883126
*
@@ -3185,6 +3223,8 @@ execute_param_clause: '(' expr_list ')' { $$ = cat_str(3, make_str("("), $2, mak
31853223
31863224
DeallocateStmt: DEALLOCATE name { $$ = cat2_str(make_str("deallocate"), $2); }
31873225
| DEALLOCATE PREPARE name { $$ = cat2_str(make_str("deallocate prepare"), $3); }
3226+
| DEALLOCATE ALL { $$ = make_str("deallocate all"); }
3227+
| DEALLOCATE PREPARE ALL { $$ = make_str("deallocate prepare all"); }
31883228
;
31893229
*/
31903230

@@ -5401,11 +5441,11 @@ var_type: simple_type
54015441
}
54025442
;
54035443

5404-
enum_type: SQL_ENUM symbol enum_definition
5444+
enum_type: ENUM_P symbol enum_definition
54055445
{ $$ = cat_str(3, make_str("enum"), $2, $3); }
5406-
| SQL_ENUM enum_definition
5446+
| ENUM_P enum_definition
54075447
{ $$ = cat2_str(make_str("enum"), $2); }
5408-
| SQL_ENUM symbol
5448+
| ENUM_P symbol
54095449
{ $$ = cat2_str(make_str("enum"), $2); }
54105450
;
54115451

@@ -6367,6 +6407,7 @@ ECPGunreserved_con: ABORT_P { $$ = make_str("abort"); }
63676407
| AGGREGATE { $$ = make_str("aggregate"); }
63686408
| ALSO { $$ = make_str("also"); }
63696409
| ALTER { $$ = make_str("alter"); }
6410+
| ALWAYS { $$ = make_str("always"); }
63706411
| ASSERTION { $$ = make_str("assertion"); }
63716412
| ASSIGNMENT { $$ = make_str("assignment"); }
63726413
| AT { $$ = make_str("at"); }
@@ -6409,6 +6450,7 @@ ECPGunreserved_con: ABORT_P { $$ = make_str("abort"); }
64096450
| DELIMITER { $$ = make_str("delimiter"); }
64106451
| DELIMITERS { $$ = make_str("delimiters"); }
64116452
| DISABLE_P { $$ = make_str("disable"); }
6453+
| DISCARD { $$ = make_str("discard"); }
64126454
| DOCUMENT_P { $$ = make_str("document"); }
64136455
| DOMAIN_P { $$ = make_str("domain"); }
64146456
| DOUBLE_P { $$ = make_str("double"); }
@@ -6417,6 +6459,7 @@ ECPGunreserved_con: ABORT_P { $$ = make_str("abort"); }
64176459
| ENABLE_P { $$ = make_str("enable"); }
64186460
| ENCODING { $$ = make_str("encoding"); }
64196461
| ENCRYPTED { $$ = make_str("encrypted"); }
6462+
/* | ENUM_P { $$ = make_str("enum"); }*/
64206463
| ESCAPE { $$ = make_str("escape"); }
64216464
| EXCLUDING { $$ = make_str("excluding"); }
64226465
| EXCLUSIVE { $$ = make_str("exclusive"); }
@@ -6491,6 +6534,7 @@ ECPGunreserved_con: ABORT_P { $$ = make_str("abort"); }
64916534
| OWNER { $$ = make_str("owner"); }
64926535
| PARTIAL { $$ = make_str("partial"); }
64936536
| PASSWORD { $$ = make_str("password"); }
6537+
| PLANS { $$ = make_str("plans"); }
64946538
| PREPARE { $$ = make_str("prepare"); }
64956539
| PREPARED { $$ = make_str("prepared"); }
64966540
| PRESERVE { $$ = make_str("preserver"); }
@@ -6508,6 +6552,7 @@ ECPGunreserved_con: ABORT_P { $$ = make_str("abort"); }
65086552
| RENAME { $$ = make_str("rename"); }
65096553
| REPEATABLE { $$ = make_str("repeatable"); }
65106554
| REPLACE { $$ = make_str("replace"); }
6555+
| REPLICA { $$ = make_str("replica"); }
65116556
| RESET { $$ = make_str("reset"); }
65126557
| RESTART { $$ = make_str("restart"); }
65136558
| RESTRICT { $$ = make_str("restrict"); }
@@ -6903,7 +6948,7 @@ c_anything: IDENT { $$ = $1; }
69036948
| S_TYPEDEF { $$ = make_str("typedef"); }
69046949
| S_VOLATILE { $$ = make_str("volatile"); }
69056950
| SQL_BOOL { $$ = make_str("bool"); }
6906-
| SQL_ENUM { $$ = make_str("enum"); }
6951+
| ENUM_P { $$ = make_str("enum"); }
69076952
| HOUR_P { $$ = make_str("hour"); }
69086953
| INT_P { $$ = make_str("int"); }
69096954
| SQL_LONG { $$ = make_str("long"); }

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