diff --git a/src/interfaces/ecpg/preproc/ecpg.trailer b/src/interfaces/ecpg/preproc/ecpg.trailer
index 5c09cbbd8e6ad67ea10081a65155fe1449f6c11e..e9bc9e7ae0315f4cb3728b299c6538b1fbc0534a 100644
--- a/src/interfaces/ecpg/preproc/ecpg.trailer
+++ b/src/interfaces/ecpg/preproc/ecpg.trailer
@@ -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); }
 		;