@@ -1247,12 +1247,13 @@ OptInherit: INHERITS '(' relation_name_list ')' { $$ = cat_str(3
1247
1247
* SELECT ... INTO.
1248
1248
*/
1249
1249
1250
- CreateAsStmt : CREATE OptTemp TABLE relation_name OptCreateAs AS SelectStmt
1250
+ CreateAsStmt : CREATE OptTemp TABLE relation_name OptCreateAs AS
1251
+ { FoundInto = 0 ; } SelectStmt
1251
1252
{
1252
1253
if (FoundInto == 1 )
1253
1254
mmerror (ET_ERROR, " CREATE TABLE/AS SELECT may not specify INTO" );
1254
1255
1255
- $$ = cat_str(7 , make_str(" create" ), $2 , make_str(" table" ), $4 , $5 , make_str(" as" ), $7 );
1256
+ $$ = cat_str(7 , make_str(" create" ), $2 , make_str(" table" ), $4 , $5 , make_str(" as" ), $8 );
1256
1257
}
1257
1258
;
1258
1259
@@ -2042,6 +2043,7 @@ RuleStmt: CREATE RULE name AS
2042
2043
ON event TO event_object where_clause
2043
2044
DO opt_instead RuleActionList
2044
2045
{
2046
+ QueryIsRule=0 ;
2045
2047
$$ = cat_str(10 , make_str(" create rule" ), $3 , make_str(" as on" ), $7 , make_str(" to" ), $9 , $10 , make_str(" do" ), $12 , $13 );
2046
2048
}
2047
2049
;
@@ -2510,7 +2512,6 @@ select_no_parens: simple_select
2510
2512
2511
2513
select_clause : simple_select
2512
2514
{
2513
- FoundInto = 0 ;
2514
2515
$$ = $1 ;
2515
2516
2516
2517
}
@@ -3808,17 +3809,17 @@ ColLabel: ECPGLabelTypeName { $$ = $1; }
3808
3809
3809
3810
SpecialRuleRelation : OLD
3810
3811
{
3811
- if (QueryIsRule)
3812
- $$ = make_str(" old" );
3813
- else
3812
+ if (!QueryIsRule)
3814
3813
mmerror (ET_ERROR, " OLD used in non-rule query" );
3814
+
3815
+ $$ = make_str(" old" );
3815
3816
}
3816
3817
| NEW
3817
3818
{
3818
- if (QueryIsRule)
3819
- $$ = make_str(" new" );
3820
- else
3819
+ if (!QueryIsRule)
3821
3820
mmerror (ET_ERROR, " NEW used in non-rule query" );
3821
+
3822
+ $$ = make_str(" new" );
3822
3823
}
3823
3824
;
3824
3825
0 commit comments