| Index: runtime/vm/parser.cc
|
| diff --git a/runtime/vm/parser.cc b/runtime/vm/parser.cc
|
| index 79097a3243e4c09ba60f7b8eded9e2406e59e7e3..be022404f418f6e92583dcd0f55281e73b040b04 100644
|
| --- a/runtime/vm/parser.cc
|
| +++ b/runtime/vm/parser.cc
|
| @@ -6637,7 +6637,7 @@ SequenceNode* Parser::CloseAsyncGeneratorTryBlock(SequenceNode* body) {
|
| current_block_->statements->Add(new (Z) InstanceCallNode(
|
| try_end_pos, new (Z) LoadLocalNode(TokenPosition::kNoSource, controller),
|
| Symbols::AddError(), args));
|
| - ReturnNode* return_node = new (Z) ReturnNode(TokenPosition::kNoSource);
|
| + ReturnNode* return_node = new (Z) ReturnNode(try_end_pos);
|
| AddNodeForFinallyInlining(return_node);
|
| current_block_->statements->Add(return_node);
|
| AstNode* catch_block = CloseBlock();
|
| @@ -6787,7 +6787,7 @@ SequenceNode* Parser::CloseAsyncTryBlock(SequenceNode* try_block,
|
| func_end_pos,
|
| new (Z) LoadLocalNode(TokenPosition::kNoSource, async_completer),
|
| Symbols::CompleterCompleteError(), completer_args));
|
| - ReturnNode* return_node = new (Z) ReturnNode(TokenPosition::kNoSource);
|
| + ReturnNode* return_node = new (Z) ReturnNode(func_end_pos);
|
| // Behavior like a continuation return, i.e,. don't call a completer.
|
| return_node->set_return_type(ReturnNode::kContinuation);
|
| current_block_->statements->Add(return_node);
|
| @@ -9365,7 +9365,7 @@ AstNode* Parser::ParseAwaitForStatement(String* label_name) {
|
| ArgumentListNode* no_args =
|
| new (Z) ArgumentListNode(TokenPosition::kNoSource);
|
| current_block_->statements->Add(new (Z) InstanceCallNode(
|
| - TokenPosition::kNoSource,
|
| + ST(await_for_pos),
|
| new (Z) LoadLocalNode(TokenPosition::kNoSource, iterator_var),
|
| Symbols::Cancel(), no_args));
|
| finally_clause = CloseBlock();
|
|
|