Fixed ecpg parser to allow more than one C preprocessor command inside a declare...
authorMichael Meskes
Sat, 20 Mar 2010 18:53:00 +0000 (18:53 +0000)
committerMichael Meskes
Sat, 20 Mar 2010 18:53:00 +0000 (18:53 +0000)
src/interfaces/ecpg/preproc/ecpg.trailer

index 5c09cbbd8e6ad67ea10081a65155fe1449f6c11e..e9bc9e7ae0315f4cb3728b299c6538b1fbc0534a 100644 (file)
@@ -1,4 +1,4 @@
-/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg.trailer,v 1.21 2010/03/09 11:09:45 meskes Exp $ */
+/* $PostgreSQL: pgsql/src/interfaces/ecpg/preproc/ecpg.trailer,v 1.22 2010/03/20 18:53:00 meskes Exp $ */
 
 statements: /*EMPTY*/
                 | statements statement
@@ -387,13 +387,11 @@ sql_enddeclare: ecpgstart END_P DECLARE SQL_SECTION ';' {};
 
 var_type_declarations: /*EMPTY*/           { $$ = EMPTY; }
        | vt_declarations           { $$ = $1; }
-       | CPP_LINE              { $$ = $1; }
        ;
 
-vt_declarations:  var_declaration          { $$ = $1; }
-       | type_declaration          { $$ = $1; }
-       | vt_declarations var_declaration   { $$ = cat2_str($1, $2); }
-       | vt_declarations type_declaration  { $$ = cat2_str($1, $2); }
+vt_declarations:  single_vt_declaration            { $$ = $1; }
+       | CPP_LINE              { $$ = $1; }
+       | vt_declarations single_vt_declaration { $$ = cat2_str($1, $2); }
        | vt_declarations CPP_LINE      { $$ = cat2_str($1, $2); }
        ;