*** empty log message ***
authorMichael Meskes
Mon, 26 Apr 1999 05:28:48 +0000 (05:28 +0000)
committerMichael Meskes
Mon, 26 Apr 1999 05:28:48 +0000 (05:28 +0000)
src/interfaces/ecpg/ChangeLog
src/interfaces/ecpg/preproc/keywords.c
src/interfaces/ecpg/preproc/pgc.l
src/interfaces/ecpg/preproc/preproc.y

index a08db67ff6bdd9925b89163f6c619cbdf4d37c88..3f58d45c5674c448a082834f70e871ed456bd1fc 100644 (file)
@@ -563,6 +563,12 @@ Wed Apr 14 17:59:06 CEST 1999
 Fri Apr 16 18:25:18 CEST 1999
 
    - Fixed small bug in ECPGfinish().
+
+Sat Apr 24 12:39:07 CEST 1999
+
+   - Synced preproc.y with gram.y.
+   - Allow more than one blank between EXEC and SQL.
+   - Allow statements to be prepared from a character string, too.
    - Set library version to 3.0.0
    - Set ecpg version to 2.6.0
 
index dbfd7002e64ebc40a001e6049db15b9f3df8c771..5306860ae39ce72983248f37470299c13beb48d4 100644 (file)
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *   $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/keywords.c,v 1.12 1999/03/20 19:46:53 meskes Exp $
+ *   $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/keywords.c,v 1.13 1999/04/26 05:28:47 meskes Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -213,6 +213,7 @@ static ScanKeyword ScanKeywords[] = {
    {"substring", SUBSTRING},
    {"table", TABLE},
    {"temp", TEMP},
+   {"temporary", TEMPORARY},
    {"then", THEN},
    {"time", TIME},
    {"timestamp", TIMESTAMP},
index aa7b185265280fe678a0b8f3fe118b7eb4d5c064..0ae219097855a4209407dda01f8babc0f29d5b02 100644 (file)
@@ -487,7 +487,7 @@ cppline     {space}*#.*(\\{space}*\n)*\n*
                }
 {space}           { /* ignore */ }
 {other}           { return yytext[0]; }
-{exec}{space}{sql}      { BEGIN SQL; return SQL_START; }
+{exec}{space}*{sql}     { BEGIN SQL; return SQL_START; }
 {ccomment}          { /* ignore */ } 
 {cppline}           {
                    yylval.str = mm_strdup((char*)yytext);
index c46d68383cd196499861583774be5a501eb2b0d1..84984acf9430cae6355c1edee72f3741047e4139 100644 (file)
@@ -692,8 +692,8 @@ adjust_array(enum ECPGttype type_enum, int *dimension, int *length, int type_dim
                 PARTIAL, POSITION, PRECISION, PRIMARY, PRIOR, PRIVILEGES, PROCEDURE, PUBLIC,
                 READ, REFERENCES, RELATIVE, REVOKE, RIGHT, ROLLBACK,
                 SCROLL, SECOND_P, SELECT, SET, SUBSTRING,
-                TABLE, TEMP, THEN, TIME, TIMESTAMP, TIMEZONE_HOUR, TIMEZONE_MINUTE,
-       TO, TRAILING, TRANSACTION, TRIM, TRUE_P,
+                TABLE, TEMP, TEMPORARY, THEN, TIME, TIMESTAMP, TIMEZONE_HOUR,
+       TIMEZONE_MINUTE, TO, TRAILING, TRANSACTION, TRIM, TRUE_P,
                 UNION, UNIQUE, UPDATE, USER, USING,
                 VALUES, VARCHAR, VARYING, VIEW,
                 WHEN, WHERE, WITH, WORK, YEAR_P, ZONE
@@ -1301,6 +1301,7 @@ CreateStmt:  CREATE OptTemp TABLE relation_name '(' OptTableElementList ')'
        ;
 
 OptTemp:     TEMP      { $$ = make1_str("temp"); }
+       | TEMPORARY { $$ = make1_str("temporary"); }
        | /* EMPTY */   { $$ = make1_str(""); }
        ;
 
@@ -5140,7 +5141,7 @@ variablelist: cinputvariable | cinputvariable ',' variablelist
  * As long as the prepare statement is not supported by the backend, we will
  * try to simulate it here so we get dynamic SQL 
  */
-ECPGPrepare: SQL_PREPARE ident FROM char_variable
+ECPGPrepare: SQL_PREPARE ident FROM execstring
    {
        $$ = make4_str(make1_str("\""), $2, make1_str("\", "), $4);
    }