diff --git a/src/interfaces/ecpg/preproc/ecpg.trailer b/src/interfaces/ecpg/preproc/ecpg.trailer
index 6ef9f1ab9d80c7996a33bed1f1cf5659fd013086..da378ebd27ed94e2d71017ccd60842836f181ce1 100644
--- a/src/interfaces/ecpg/preproc/ecpg.trailer
+++ b/src/interfaces/ecpg/preproc/ecpg.trailer
@@ -1856,20 +1856,20 @@ DeallocateStmt: DEALLOCATE prepared_name                { $$ = $2; }
                 | DEALLOCATE PREPARE ALL                { $$ = mm_strdup("all"); }
                 ;
 
-Iresult:        Iconst			{ $$ = $1; }
-                | '(' Iresult ')'       { $$ = cat_str(3, mm_strdup("("), $2, mm_strdup(")")); }
-                | Iresult '+' Iresult   { $$ = cat_str(3, $1, mm_strdup("+"), $3); }
-                | Iresult '-' Iresult   { $$ = cat_str(3, $1, mm_strdup("-"), $3); }
-                | Iresult '*' Iresult   { $$ = cat_str(3, $1, mm_strdup("*"), $3); }
-                | Iresult '/' Iresult   { $$ = cat_str(3, $1, mm_strdup("/"), $3); }
-                | Iresult '%' Iresult   { $$ = cat_str(3, $1, mm_strdup("%"), $3); }
-                | ecpg_sconst		{ $$ = $1; }
-                | ColId                 { $$ = $1; }
-		| ColId '(' ColId ')'   { if (pg_strcasecmp($1, "sizeof") != 0)
-						mmerror(PARSE_ERROR, ET_ERROR, "operator not allowed in variable definition");
-					 else
-						$$ = cat_str(4,$1, mm_strdup("("), $3, mm_strdup(")"));
-					}
+Iresult:        Iconst				{ $$ = $1; }
+                | '(' Iresult ')'		{ $$ = cat_str(3, mm_strdup("("), $2, mm_strdup(")")); }
+                | Iresult '+' Iresult		{ $$ = cat_str(3, $1, mm_strdup("+"), $3); }
+                | Iresult '-' Iresult		{ $$ = cat_str(3, $1, mm_strdup("-"), $3); }
+                | Iresult '*' Iresult		{ $$ = cat_str(3, $1, mm_strdup("*"), $3); }
+                | Iresult '/' Iresult		{ $$ = cat_str(3, $1, mm_strdup("/"), $3); }
+                | Iresult '%' Iresult		{ $$ = cat_str(3, $1, mm_strdup("%"), $3); }
+                | ecpg_sconst			{ $$ = $1; }
+                | ColId				{ $$ = $1; }
+		| ColId '(' var_type ')'        { if (pg_strcasecmp($1, "sizeof") != 0)
+							mmerror(PARSE_ERROR, ET_ERROR, "operator not allowed in variable definition");
+						  else
+							$$ = cat_str(4, $1, mm_strdup("("), $3.type_str, mm_strdup(")"));
+						}
                 ;
 
 execute_rest: /* EMPTY */	{ $$ = EMPTY; }