@@ -2507,43 +2507,15 @@ CreateStmt:CREATE OptTemp TABLE qualified_name '(' OptTableElementList ')'
25072507 * Redundancy here is needed to avoid shift/reduce conflicts,
25082508 * since TEMP is not a reserved word. See also OptTempTableName.
25092509 *
2510- * NOTE: we don't accept either the GLOBAL or LOCAL options: not yet implemented.
2510+ * NOTE: we accept both GLOBAL and LOCAL options; since we have no modules
2511+ * the LOCAL keyword is really meaningless.
25112512*/
25122513OptTemp :TEMPORARY {$$ = RELPERSISTENCE_TEMP; }
25132514| TEMP {$$ = RELPERSISTENCE_TEMP; }
2514- | LOCAL TEMPORARY
2515- {
2516- ereport (ERROR,
2517- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
2518- errmsg(" LOCAL TEMPORARY not yet implemented" ),
2519- parser_errposition(@1 )));
2520- $$ = RELPERSISTENCE_TEMP;
2521- }
2522- | LOCAL TEMP
2523- {
2524- ereport (ERROR,
2525- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
2526- errmsg(" LOCAL TEMPORARY not yet implemented" ),
2527- parser_errposition(@1 )));
2528- $$ = RELPERSISTENCE_TEMP;
2529- }
2530- | GLOBAL TEMPORARY
2531- {
2532- ereport (ERROR,
2533- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
2534- errmsg(" GLOBAL TEMPORARY not yet implemented" ),
2535- parser_errposition(@1 )));
2536- $$ = RELPERSISTENCE_TEMP;
2537- }
2538- | GLOBAL TEMP
2539- {
2540- ereport (ERROR,
2541- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
2542- errmsg(" GLOBAL TEMPORARY not yet implemented" ),
2543- parser_errposition(@1 )));
2544- $$ = RELPERSISTENCE_TEMP;
2545- }
2546-
2515+ | LOCAL TEMPORARY {$$ = RELPERSISTENCE_TEMP; }
2516+ | LOCAL TEMP {$$ = RELPERSISTENCE_TEMP; }
2517+ | GLOBAL TEMPORARY {$$ = RELPERSISTENCE_TEMP; }
2518+ | GLOBAL TEMP {$$ = RELPERSISTENCE_TEMP; }
25472519| UNLOGGED {$$ = RELPERSISTENCE_UNLOGGED; }
25482520| /* EMPTY*/ {$$ = RELPERSISTENCE_PERMANENT; }
25492521;
@@ -8949,37 +8921,21 @@ OptTempTableName:
89498921| LOCAL TEMPORARY opt_table qualified_name
89508922{
89518923$$ =$4 ;
8952- ereport (ERROR,
8953- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8954- errmsg(" LOCAL TEMPORARY not yet implemented" ),
8955- parser_errposition(@1 )));
89568924$$ ->relpersistence = RELPERSISTENCE_TEMP;
89578925}
89588926| LOCAL TEMP opt_table qualified_name
89598927{
89608928$$ =$4 ;
8961- ereport (ERROR,
8962- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8963- errmsg(" LOCAL TEMPORARY not yet implemented" ),
8964- parser_errposition(@1 )));
89658929$$ ->relpersistence = RELPERSISTENCE_TEMP;
89668930}
89678931| GLOBAL TEMPORARY opt_table qualified_name
89688932{
89698933$$ =$4 ;
8970- ereport (ERROR,
8971- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8972- errmsg(" GLOBAL TEMPORARY not yet implemented" ),
8973- parser_errposition(@1 )));
89748934$$ ->relpersistence = RELPERSISTENCE_TEMP;
89758935}
89768936| GLOBAL TEMP opt_table qualified_name
89778937{
89788938$$ =$4 ;
8979- ereport (ERROR,
8980- (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8981- errmsg(" GLOBAL TEMPORARY not yet implemented" ),
8982- parser_errposition(@1 )));
89838939$$ ->relpersistence = RELPERSISTENCE_TEMP;
89848940}
89858941| UNLOGGED opt_table qualified_name