@@ -2507,15 +2507,43 @@ 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 accept both GLOBAL and LOCAL options; since we have no modules
2511- * the LOCAL keyword is really meaningless.
2510+ * NOTE: we don't accept either the GLOBAL or LOCAL options: not yet implemented.
25122511*/
25132512OptTemp :TEMPORARY {$$ = RELPERSISTENCE_TEMP; }
25142513| TEMP {$$ = RELPERSISTENCE_TEMP; }
2515- | LOCAL TEMPORARY {$$ = RELPERSISTENCE_TEMP; }
2516- | LOCAL TEMP {$$ = RELPERSISTENCE_TEMP; }
2517- | GLOBAL TEMPORARY {$$ = RELPERSISTENCE_TEMP; }
2518- | GLOBAL 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+
25192547| UNLOGGED {$$ = RELPERSISTENCE_UNLOGGED; }
25202548| /* EMPTY*/ {$$ = RELPERSISTENCE_PERMANENT; }
25212549;
@@ -8921,21 +8949,37 @@ OptTempTableName:
89218949| LOCAL TEMPORARY opt_table qualified_name
89228950{
89238951$$ =$4 ;
8952+ ereport (ERROR,
8953+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8954+ errmsg(" LOCAL TEMPORARY not yet implemented" ),
8955+ parser_errposition(@1 )));
89248956$$ ->relpersistence = RELPERSISTENCE_TEMP;
89258957}
89268958| LOCAL TEMP opt_table qualified_name
89278959{
89288960$$ =$4 ;
8961+ ereport (ERROR,
8962+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8963+ errmsg(" LOCAL TEMPORARY not yet implemented" ),
8964+ parser_errposition(@1 )));
89298965$$ ->relpersistence = RELPERSISTENCE_TEMP;
89308966}
89318967| GLOBAL TEMPORARY opt_table qualified_name
89328968{
89338969$$ =$4 ;
8970+ ereport (ERROR,
8971+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8972+ errmsg(" GLOBAL TEMPORARY not yet implemented" ),
8973+ parser_errposition(@1 )));
89348974$$ ->relpersistence = RELPERSISTENCE_TEMP;
89358975}
89368976| GLOBAL TEMP opt_table qualified_name
89378977{
89388978$$ =$4 ;
8979+ ereport (ERROR,
8980+ (errcode(ERRCODE_FEATURE_NOT_SUPPORTED),
8981+ errmsg(" GLOBAL TEMPORARY not yet implemented" ),
8982+ parser_errposition(@1 )));
89398983$$ ->relpersistence = RELPERSISTENCE_TEMP;
89408984}
89418985| UNLOGGED opt_table qualified_name