X-Git-Url: https://git.gag.com/?a=blobdiff_plain;f=src%2FSDCC.y;h=1ffd9a4e482271869e67eba4f9169711be17613d;hb=5ec86507972e4b25f3acd259f5e05f65f17fa70c;hp=e7bf6d42826da1487c7f6af4be3c65cc735e4514;hpb=6ddfcdd55896c6949b5b70c8bd01c3ebeead91e0;p=fw%2Fsdcc diff --git a/src/SDCC.y b/src/SDCC.y index e7bf6d42..1ffd9a4e 100644 --- a/src/SDCC.y +++ b/src/SDCC.y @@ -1018,9 +1018,7 @@ opt_assign_expr $$ = cenum = constVal(lbuff); } else { - SNPRINTF(lbuff, sizeof(lbuff), - "%d",0); - $$ = cenum = constVal(lbuff); + $$ = cenum = constVal("0"); } } ; @@ -1450,15 +1448,12 @@ end_block : '}' { currBlockno = STACK_POP(blockNum); } ; compound_statement - : start_block end_block { $$ = createBlock(NULL,NULL); } - | start_block statement_list end_block { $$ = createBlock(NULL,$2) ; } + : start_block end_block { $$ = createBlock(NULL, NULL); } + | start_block statement_list end_block { $$ = createBlock(NULL, $2); } + | start_block declaration_list end_block { $$ = createBlock($2, NULL); } | start_block - declaration_list { addSymChain(&$2); } - end_block { $$ = createBlock($2,NULL) ; } - | start_block - declaration_list { addSymChain (&$2); } - statement_list - end_block {$$ = createBlock($2,$4) ; } + declaration_list statement_list + end_block {$$ = createBlock($2, $3); } | error ';' { $$ = NULL ; } ; @@ -1473,6 +1468,7 @@ declaration_list else $$ = $1 ; ignoreTypedefType = 0; + addSymChain(&$1); } | declaration_list declaration @@ -1496,6 +1492,7 @@ declaration_list $$ = $2 ; } ignoreTypedefType = 0; + addSymChain(&$2); } ;