Changes in src/AST/Convert.cpp [298fe57:9e7236f4]
- File:
-
- 1 edited
-
src/AST/Convert.cpp (modified) (5 diffs)
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Convert.cpp
r298fe57 r9e7236f4 10 10 // Created On : Thu May 09 15::37::05 2019 11 11 // Last Modified By : Andrew Beach 12 // Last Modified On : Wed Apr 20 13:58:00 202213 // Update Count : 4 312 // Last Modified On : Wed Mar 16 15:01:00 2022 13 // Update Count : 42 14 14 // 15 15 … … 562 562 for ( auto clause : node->clauses ) { 563 563 stmt->clauses.push_back({{ 564 get<Expression>().accept1( clause ->target_func ),565 get<Expression>().acceptL( clause ->target_args ),564 get<Expression>().accept1( clause.target.func ), 565 get<Expression>().acceptL( clause.target.args ), 566 566 }, 567 get<Statement>().accept1( clause ->stmt ),568 get<Expression>().accept1( clause ->cond ),567 get<Statement>().accept1( clause.stmt ), 568 get<Expression>().accept1( clause.cond ), 569 569 }); 570 570 } 571 571 stmt->timeout = { 572 get<Expression>().accept1( node->timeout _time ),573 get<Statement>().accept1( node->timeout _stmt ),574 get<Expression>().accept1( node->timeout _cond ),572 get<Expression>().accept1( node->timeout.time ), 573 get<Statement>().accept1( node->timeout.stmt ), 574 get<Expression>().accept1( node->timeout.cond ), 575 575 }; 576 576 stmt->orelse = { 577 get<Statement>().accept1( node-> else_stmt ),578 get<Expression>().accept1( node-> else_cond ),577 get<Statement>().accept1( node->orElse.stmt ), 578 get<Expression>().accept1( node->orElse.cond ), 579 579 }; 580 580 return stmtPostamble( stmt, node ); 581 }582 583 const ast::WaitForClause * visit( const ast::WaitForClause * node ) override final {584 // There is no old-AST WaitForClause, so this should never be called.585 assert( !node );586 return nullptr;587 581 } 588 582 … … 1730 1724 } 1731 1725 1732 // Convert SynTree::EnumDecl to AST::EnumDecl 1726 1733 1727 virtual void visit( const EnumDecl * old ) override final { 1734 1728 if ( inCache( old ) ) return; … … 2102 2096 stmt->clauses.reserve( old->clauses.size() ); 2103 2097 for (size_t i = 0 ; i < old->clauses.size() ; ++i) { 2104 auto clause = new ast::WaitForClause( old->location ); 2105 2106 clause->target_func = GET_ACCEPT_1(clauses[i].target.function, Expr); 2107 clause->target_args = GET_ACCEPT_V(clauses[i].target.arguments, Expr); 2108 clause->stmt = GET_ACCEPT_1(clauses[i].statement, Stmt); 2109 clause->cond = GET_ACCEPT_1(clauses[i].condition, Expr); 2110 2111 stmt->clauses.push_back( clause ); 2112 } 2113 stmt->timeout_time = GET_ACCEPT_1(timeout.time, Expr); 2114 stmt->timeout_stmt = GET_ACCEPT_1(timeout.statement, Stmt); 2115 stmt->timeout_cond = GET_ACCEPT_1(timeout.condition, Expr); 2116 stmt->else_stmt = GET_ACCEPT_1(orelse.statement, Stmt); 2117 stmt->else_cond = GET_ACCEPT_1(orelse.condition, Expr); 2098 stmt->clauses.push_back({ 2099 ast::WaitForStmt::Target{ 2100 GET_ACCEPT_1(clauses[i].target.function, Expr), 2101 GET_ACCEPT_V(clauses[i].target.arguments, Expr) 2102 }, 2103 GET_ACCEPT_1(clauses[i].statement, Stmt), 2104 GET_ACCEPT_1(clauses[i].condition, Expr) 2105 }); 2106 } 2107 stmt->timeout = { 2108 GET_ACCEPT_1(timeout.time, Expr), 2109 GET_ACCEPT_1(timeout.statement, Stmt), 2110 GET_ACCEPT_1(timeout.condition, Expr), 2111 }; 2112 stmt->orElse = { 2113 GET_ACCEPT_1(orelse.statement, Stmt), 2114 GET_ACCEPT_1(orelse.condition, Expr), 2115 }; 2118 2116 2119 2117 this->node = stmt; … … 2729 2727 ty->forall.emplace_back(new ast::TypeInstType(param)); 2730 2728 for (auto asst : param->assertions) { 2731 ty->assertions.emplace_back( 2732 new ast::VariableExpr(param->location, asst)); 2729 ty->assertions.emplace_back(new ast::VariableExpr({}, asst)); 2733 2730 } 2734 2731 }
Note:
See TracChangeset
for help on using the changeset viewer.