diff --git a/src/interfaces/ecpg/ChangeLog b/src/interfaces/ecpg/ChangeLog
index f29ec9b53240e24dcba8d9ba425765246e1e1b89..cff09a8d0c42a19ebdb358365eab80835ce1fcd8 100644
--- a/src/interfaces/ecpg/ChangeLog
+++ b/src/interfaces/ecpg/ChangeLog
@@ -999,5 +999,10 @@ Son Oct 29 11:26:06 CET 2000
 Mon Oct 30 15:27:12 CET 2000
 
 	- Synced gram.y and preproc.y. 
+
+Tue Oct 31 16:09:55 CET 2000
+
+	- Added patch by Christof Petig <christof.petig@wtal.de> fixing some
+	  parser bugs.
 	- Set ecpg version to 2.8.0. 
 	- Set library version to 3.2.0.
diff --git a/src/interfaces/ecpg/preproc/preproc.y b/src/interfaces/ecpg/preproc/preproc.y
index 888452f0c988b9a8567460e82f3f905189db4bd7..1a0beba3e69c2c4ded49aebf2a9aac4d1559452a 100644
--- a/src/interfaces/ecpg/preproc/preproc.y
+++ b/src/interfaces/ecpg/preproc/preproc.y
@@ -2758,11 +2758,11 @@ table_ref:  relation_expr
                 }
 	| relation_expr alias_clause 
 		{
-			cat2_str($1, $2);
+			$$= cat2_str($1, $2);
 		}
 	| '(' select_subclause ')' alias_clause 
 		{
-			cat_str(4, make_str("("), $2, make_str(")"), $4);
+			$$=cat_str(4, make_str("("), $2, make_str(")"), $4);
 		}
 	| joined_table  
 		{
@@ -2770,7 +2770,7 @@ table_ref:  relation_expr
                 }  
 	| '(' joined_table ')' alias_clause   
                 {
-                        cat_str(4, make_str("("), $2, make_str(")"), $4);
+                        $$=cat_str(4, make_str("("), $2, make_str(")"), $4);
                 }             
 	;