Changes in src/Parser/StatementNode.cc [20519b7:936e9f4]
- File:
-
- 1 edited
-
src/Parser/StatementNode.cc (modified) (3 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/StatementNode.cc
r20519b7 r936e9f4 10 10 // Created On : Sat May 16 14:59:41 2015 11 11 // Last Modified By : Peter A. Buhr 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" 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; 25 30 26 31 using namespace std; … … 74 79 } 75 80 76 Statement *build_if( ExpressionNode *ctl, StatementNode *then_stmt, StatementNode *else_stmt ) {81 Statement *build_if( IfCtl * ctl, StatementNode *then_stmt, StatementNode *else_stmt ) { 77 82 Statement *thenb, *elseb = 0; 78 83 std::list< Statement * > branches; … … 87 92 elseb = branches.front(); 88 93 } // if 89 return new IfStmt( noLabels, notZeroExpr( maybeMoveBuild< Expression >(ctl) ), thenb, elseb ); 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; 90 109 } 91 110
Note:
See TracChangeset
for help on using the changeset viewer.