synced preproc.y with gram.y
This commit is contained in:
parent
6ec5eaad3b
commit
e97fe98c36
@ -1138,5 +1138,9 @@ Thu Oct 18 12:57:04 CEST 2001
|
|||||||
Fri Oct 19 16:32:06 CEST 2001
|
Fri Oct 19 16:32:06 CEST 2001
|
||||||
|
|
||||||
- Removed "not yet fully implemented" warnig for nullif.
|
- Removed "not yet fully implemented" warnig for nullif.
|
||||||
|
|
||||||
|
Sun Oct 21 14:19:42 CEST 2001
|
||||||
|
|
||||||
|
- Synced preproc.y with gram.y.
|
||||||
- Set ecpg version to 2.9.0.
|
- Set ecpg version to 2.9.0.
|
||||||
- Set library version to 3.3.0.
|
- Set library version to 3.3.0.
|
||||||
|
@ -833,7 +833,21 @@ opt_boolean: TRUE_P { $$ = make_str("true"); }
|
|||||||
| OFF { $$ = make_str("off"); }
|
| OFF { $$ = make_str("off"); }
|
||||||
;
|
;
|
||||||
|
|
||||||
|
/* Timezone values can be:
|
||||||
|
* - a string such as 'pst8pdt'
|
||||||
|
* - an integer or floating point number
|
||||||
|
* - a time interval per SQL99
|
||||||
|
*/
|
||||||
zone_value: StringConst { $$ = $1; }
|
zone_value: StringConst { $$ = $1; }
|
||||||
|
| ConstInterval StringConst opt_interval
|
||||||
|
{
|
||||||
|
$$ = cat_str(3, $1, $2, $3);
|
||||||
|
}
|
||||||
|
| ConstInterval '(' PosIntConst ')' StringConst opt_interval
|
||||||
|
{
|
||||||
|
$$ = cat_str(6, $1, make_str("("), $3, make_str(")"), $5, $6);
|
||||||
|
}
|
||||||
|
| NumConst { $$ = $1; }
|
||||||
| DEFAULT { $$ = make_str("default"); }
|
| DEFAULT { $$ = make_str("default"); }
|
||||||
| LOCAL { $$ = make_str("local"); }
|
| LOCAL { $$ = make_str("local"); }
|
||||||
;
|
;
|
||||||
@ -844,7 +858,7 @@ opt_encoding: StringConst { $$ = $1; }
|
|||||||
;
|
;
|
||||||
|
|
||||||
ColId_or_Sconst: ColId { $$ = $1; }
|
ColId_or_Sconst: ColId { $$ = $1; }
|
||||||
| SCONST { $$ = $1; }
|
| StringConst { $$ = $1; }
|
||||||
;
|
;
|
||||||
|
|
||||||
VariableShowStmt: SHOW ColId
|
VariableShowStmt: SHOW ColId
|
||||||
@ -2951,7 +2965,8 @@ Iresult: PosIntConst { $$ = atol($1); }
|
|||||||
;
|
;
|
||||||
|
|
||||||
SimpleTypename: ConstTypename { $$ = $1; }
|
SimpleTypename: ConstTypename { $$ = $1; }
|
||||||
| ConstInterval { $$ = $1; }
|
| ConstInterval opt_interval { $$ = cat2_str($1, $2); }
|
||||||
|
| ConstInterval '(' PosIntConst ')' opt_interval { $$ = cat_str(5, $1, make_str("("), $3, make_str(")"), $5); }
|
||||||
;
|
;
|
||||||
|
|
||||||
ConstTypename: Generic { $$ = $1; }
|
ConstTypename: Generic { $$ = $1; }
|
||||||
@ -3120,9 +3135,9 @@ ConstDatetime: datetime
|
|||||||
}
|
}
|
||||||
;
|
;
|
||||||
|
|
||||||
ConstInterval: INTERVAL opt_interval
|
ConstInterval: INTERVAL
|
||||||
{
|
{
|
||||||
$$ = cat2_str(make_str("interval"), $2);
|
$$ = make_str("interval");
|
||||||
}
|
}
|
||||||
;
|
;
|
||||||
|
|
||||||
@ -3139,8 +3154,13 @@ opt_timezone: WITH TIME ZONE { $$ = make_str("with time zone"); }
|
|||||||
| /*EMPTY*/ { $$ = EMPTY; }
|
| /*EMPTY*/ { $$ = EMPTY; }
|
||||||
;
|
;
|
||||||
|
|
||||||
opt_interval: datetime { $$ = $1; }
|
opt_interval: YEAR_P { $$ = make_str("year"); }
|
||||||
| YEAR_P TO MONTH_P { $$ = make_str("year to #month"); }
|
| MONTH_P { $$ = make_str("month"); }
|
||||||
|
| DAY_P { $$ = make_str("day"); }
|
||||||
|
| HOUR_P { $$ = make_str("hour"); }
|
||||||
|
| MINUTE_P { $$ = make_str("minute"); }
|
||||||
|
| SECOND_P { $$ = make_str("second"); }
|
||||||
|
| YEAR_P TO MONTH_P { $$ = make_str("year to month"); }
|
||||||
| DAY_P TO HOUR_P { $$ = make_str("day to hour"); }
|
| DAY_P TO HOUR_P { $$ = make_str("day to hour"); }
|
||||||
| DAY_P TO MINUTE_P { $$ = make_str("day to minute"); }
|
| DAY_P TO MINUTE_P { $$ = make_str("day to minute"); }
|
||||||
| DAY_P TO SECOND_P { $$ = make_str("day to second"); }
|
| DAY_P TO SECOND_P { $$ = make_str("day to second"); }
|
||||||
@ -3523,7 +3543,7 @@ extract_list: extract_arg FROM a_expr
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
extract_arg: datetime { $$ = $1; }
|
extract_arg: datetime { $$ = $1; }
|
||||||
| SCONST { $$ = $1; }
|
| StringConst { $$ = $1; }
|
||||||
| IDENT { $$ = $1; }
|
| IDENT { $$ = $1; }
|
||||||
;
|
;
|
||||||
|
|
||||||
@ -3761,6 +3781,10 @@ AexprConst: PosAllConst
|
|||||||
{
|
{
|
||||||
$$ = cat_str(3, $1, $2, $3);
|
$$ = cat_str(3, $1, $2, $3);
|
||||||
}
|
}
|
||||||
|
| ConstInterval '(' PosIntConst ')' StringConst opt_interval
|
||||||
|
{
|
||||||
|
$$ = cat_str(6, $1, make_str("("), $3, make_str(")"), $5, $6);
|
||||||
|
}
|
||||||
| ParamNo
|
| ParamNo
|
||||||
{ $$ = $1; }
|
{ $$ = $1; }
|
||||||
| TRUE_P
|
| TRUE_P
|
||||||
@ -5081,7 +5105,6 @@ ECPGColId: ident { $$ = $1; }
|
|||||||
| TYPE_P { $$ = make_str("type"); }
|
| TYPE_P { $$ = make_str("type"); }
|
||||||
| datetime { $$ = $1; }
|
| datetime { $$ = $1; }
|
||||||
| TokenId { $$ = $1; }
|
| TokenId { $$ = $1; }
|
||||||
| INTERVAL { $$ = make_str("interval"); }
|
|
||||||
| NATIONAL { $$ = make_str("national"); }
|
| NATIONAL { $$ = make_str("national"); }
|
||||||
| NONE { $$ = make_str("none"); }
|
| NONE { $$ = make_str("none"); }
|
||||||
| PATH_P { $$ = make_str("path_p"); }
|
| PATH_P { $$ = make_str("path_p"); }
|
||||||
@ -5140,11 +5163,13 @@ ECPGColLabel: ECPGColId { $$ = $1; }
|
|||||||
| GROUP { $$ = make_str("group"); }
|
| GROUP { $$ = make_str("group"); }
|
||||||
| HAVING { $$ = make_str("having"); }
|
| HAVING { $$ = make_str("having"); }
|
||||||
| ILIKE { $$ = make_str("ilike"); }
|
| ILIKE { $$ = make_str("ilike"); }
|
||||||
|
| IN { $$ = make_str("in"); }
|
||||||
| INITIALLY { $$ = make_str("initially"); }
|
| INITIALLY { $$ = make_str("initially"); }
|
||||||
| INNER_P { $$ = make_str("inner"); }
|
| INNER_P { $$ = make_str("inner"); }
|
||||||
| INTERSECT { $$ = make_str("intersect"); }
|
|
||||||
| INTO { $$ = make_str("into"); }
|
|
||||||
| INOUT { $$ = make_str("inout"); }
|
| INOUT { $$ = make_str("inout"); }
|
||||||
|
| INTERSECT { $$ = make_str("intersect"); }
|
||||||
|
| INTERVAL { $$ = make_str("interval"); }
|
||||||
|
| INTO { $$ = make_str("into"); }
|
||||||
| JOIN { $$ = make_str("join"); }
|
| JOIN { $$ = make_str("join"); }
|
||||||
| LEADING { $$ = make_str("leading"); }
|
| LEADING { $$ = make_str("leading"); }
|
||||||
| LEFT { $$ = make_str("left"); }
|
| LEFT { $$ = make_str("left"); }
|
||||||
|
Loading…
x
Reference in New Issue
Block a user