Changes in src/Parser/StatementNode.cc [936e9f4:20519b7]
- File:
-
- 1 edited
-
src/Parser/StatementNode.cc (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/StatementNode.cc
r936e9f4 r20519b7 10 10 // Created On : Sat May 16 14:59:41 2015 11 11 // Last Modified By : Peter A. Buhr 12 // Last Modified On : Wed Aug 16 16:39:43 2017 13 // Update Count : 340 14 // 15 16 #include <cassert> // for assert, safe_dynamic_cast, assertf 17 #include <list> // for list 18 #include <memory> // for unique_ptr 19 #include <string> // for string 20 21 #include "Common/SemanticError.h" // for SemanticError 22 #include "Common/utility.h" // for maybeMoveBuild, maybeBuild 23 #include "ParseNode.h" // for StatementNode, ExpressionNode, bui... 24 #include "SynTree/Expression.h" // for Expression, ConstantExpr 25 #include "SynTree/Label.h" // for Label, noLabels 26 #include "SynTree/Statement.h" // for Statement, BranchStmt, CaseStmt 27 #include "parserutility.h" // for notZeroExpr 28 29 class Declaration; 12 // Last Modified On : Tue Jul 11 21:23:15 2017 13 // Update Count : 331 14 // 15 16 #include <list> 17 #include <algorithm> 18 #include <cassert> 19 20 #include "ParseNode.h" 21 #include "SynTree/Statement.h" 22 #include "SynTree/Expression.h" 23 #include "parserutility.h" 24 #include "Common/utility.h" 30 25 31 26 using namespace std; … … 79 74 } 80 75 81 Statement *build_if( IfCtl *ctl, StatementNode *then_stmt, StatementNode *else_stmt ) {76 Statement *build_if( ExpressionNode *ctl, StatementNode *then_stmt, StatementNode *else_stmt ) { 82 77 Statement *thenb, *elseb = 0; 83 78 std::list< Statement * > branches; … … 92 87 elseb = branches.front(); 93 88 } // if 94 95 std::list< Statement * > init; 96 if ( ctl->init != 0 ) { 97 buildMoveList( ctl->init, init ); 98 } // if 99 100 return new IfStmt( noLabels, notZeroExpr( 101 /*ctl->condition 102 ?*/ maybeMoveBuild< Expression >(ctl->condition) 103 /*: new VariableExpr( init.end() )*/ ) 104 , thenb, elseb ); 105 // ret->initialization = init; 106 // delete ctl; 107 // assert( ret ); 108 // return ret; 89 return new IfStmt( noLabels, notZeroExpr( maybeMoveBuild< Expression >(ctl) ), thenb, elseb ); 109 90 } 110 91
Note:
See TracChangeset
for help on using the changeset viewer.