compiler/libec/grammar: Fixed warning; Updated bootstrap
authorJerome St-Louis <jerome@ecere.com>
Mon, 5 May 2014 10:23:48 +0000 (06:23 -0400)
committerJerome St-Louis <jerome@ecere.com>
Mon, 5 May 2014 10:23:48 +0000 (06:23 -0400)
compiler/bootstrap/libec/bootstrap/grammar.c
compiler/bootstrap/libec/bootstrap/output.c
compiler/libec/precompiled/grammar.c
compiler/libec/src/grammar.ec
compiler/libec/src/grammar.y

index ce64239..cab2fc4 100644 (file)
@@ -5947,9 +5947,9 @@ ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
 break;
 case 349:
 {
-yyerror();
 struct Expression * exp = MkExpDummy();
 
+yyerror();
 exp->loc.start = (yylsp[(2) - (2)]).end;
 exp->loc.end = (yylsp[(2) - (2)]).end;
 yyval.list = yyvsp[(1) - (2)].list;
index 1b55f23..c2b8378 100644 (file)
@@ -2180,6 +2180,8 @@ struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
 
 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts])(f, "switch(");
+if(stmt->switchStmt.exp)
+{
 for(exp = (*stmt->switchStmt.exp).first; exp; exp = exp->next)
 {
 OutputExpression(exp, f);
@@ -2190,6 +2192,7 @@ struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts])(f, ", ");
 }
+}
 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char *  string))__extension__ ({
 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
 
@@ -2208,6 +2211,8 @@ struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
 
 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts])(f, "while(");
+if(stmt->switchStmt.exp)
+{
 for(exp = (*stmt->switchStmt.exp).first; exp; exp = exp->next)
 {
 OutputExpression(exp, f);
@@ -2218,6 +2223,7 @@ struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
 __internal_ClassInst ? __internal_ClassInst->_vTbl : __ecereClass___ecereNameSpace__ecere__sys__File->_vTbl;
 })[__ecereVMethodID___ecereNameSpace__ecere__sys__File_Puts])(f, ", ");
 }
+}
 ((unsigned int (*)(struct __ecereNameSpace__ecere__com__Instance *, const char *  string))__extension__ ({
 struct __ecereNameSpace__ecere__com__Instance * __internal_ClassInst = f;
 
index 800de48..2eff0b5 100644 (file)
@@ -5947,9 +5947,9 @@ ListAdd(yyvsp[(1) - (3)].list, yyvsp[(3) - (3)].exp);
 break;
 case 349:
 {
-yyerror();
 struct Expression * exp = MkExpDummy();
 
+yyerror();
 exp->loc.start = (yylsp[(2) - (2)]).end;
 exp->loc.end = (yylsp[(2) - (2)]).end;
 yyval.list = yyvsp[(1) - (2)].list;
index 71d3b1f..1b648e1 100644 (file)
@@ -16019,7 +16019,7 @@ yyreduce:
 
 /* Line 1464 of yacc.c  */
 #line 1599 "grammar.y"
-    { yyerror(); Expression exp = MkExpDummy(); exp.loc.start = (yylsp[(2) - (2)]).end; exp.loc.end = (yylsp[(2) - (2)]).end; (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), exp); ;}
+    { Expression exp = MkExpDummy(); yyerror(); exp.loc.start = (yylsp[(2) - (2)]).end; exp.loc.end = (yylsp[(2) - (2)]).end; (yyval.list) = (yyvsp[(1) - (2)].list); ListAdd((yyvsp[(1) - (2)].list), exp); ;}
     break;
 
   case 350:
index e21341e..8985b68 100644 (file)
@@ -1596,7 +1596,7 @@ argument_expression_list_error:
    | anon_instantiation_expression_error    { $$ = MkList(); ListAdd($$, $1); }
    | argument_expression_list ',' assignment_expression_error  { $$ = $1; ListAdd($1, $3);  }
    | argument_expression_list ',' anon_instantiation_expression_error  { $$ = $1; ListAdd($1, $3);  }
-   | argument_expression_list ',' { yyerror(); Expression exp = MkExpDummy(); exp.loc.start = @2.end; exp.loc.end = @2.end; $$ = $1; ListAdd($1, exp); }
+   | argument_expression_list ',' { Expression exp = MkExpDummy(); yyerror(); exp.loc.start = @2.end; exp.loc.end = @2.end; $$ = $1; ListAdd($1, exp); }
        ;
 
 common_unary_expression: