Changeset 3d9d017 for src/Parser
- Timestamp:
- Nov 6, 2023, 2:19:37 PM (13 months ago)
- Branches:
- master
- Children:
- ba0e1bc
- Parents:
- 49ae2bc
- Location:
- src/Parser
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
src/Parser/StatementNode.cc
r49ae2bc r3d9d017 503 503 } // build_corun 504 504 505 ast::Stmt * build_cofor( const CodeLocation & location, ForCtrl * forctl, StatementNode * stmt ) { 506 std::vector<ast::ptr<ast::Stmt>> astinit; // maybe empty 507 buildMoveList( forctl->init, astinit ); 508 509 ast::Expr * astcond = nullptr; // maybe empty 510 astcond = notZeroExpr( maybeMoveBuild( forctl->condition ) ); 511 512 ast::Expr * astincr = nullptr; // maybe empty 513 astincr = maybeMoveBuild( forctl->change ); 514 delete forctl; 515 516 return new ast::CoforStmt( location, 517 std::move( astinit ), 518 astcond, 519 astincr, 520 buildMoveSingle( stmt ) 521 ); 522 } // build_cofor 523 505 524 // Local Variables: // 506 525 // tab-width: 4 // -
src/Parser/StatementNode.h
r49ae2bc r3d9d017 106 106 ast::Stmt * build_mutex( const CodeLocation &, ExpressionNode * exprs, StatementNode * stmt ); 107 107 ast::Stmt * build_corun( const CodeLocation &, StatementNode * stmt ); 108 ast::Stmt * build_cofor( const CodeLocation & location, ForCtrl * forctl, StatementNode * stmt ); -
src/Parser/parser.yy
r49ae2bc r3d9d017 1725 1725 cofor_statement: 1726 1726 COFOR '(' for_control_expression_list ')' statement 1727 { SemanticError( yylloc, "cofor statement is currently unimplemented." ); $$ = nullptr; }1727 { $$ = new StatementNode( build_cofor( yylloc, $3, maybe_build_compound( yylloc, $5 ) ) ); } 1728 1728 ; 1729 1729
Note: See TracChangeset
for help on using the changeset viewer.