diff --git a/src/interfaces/ecpg/preproc/ecpg.trailer b/src/interfaces/ecpg/preproc/ecpg.trailer index 6ef9f1ab9d..da378ebd27 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; }