Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(522)

Unified Diff: runtime/vm/ast_transformer.cc

Issue 511483003: Revert "Fix scope/context behavior in await transformer." (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/ast_transformer.h ('k') | runtime/vm/parser.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/ast_transformer.cc
diff --git a/runtime/vm/ast_transformer.cc b/runtime/vm/ast_transformer.cc
index f0d8848f4279d61f873f7c9b0fb974825c1690f1..6ef865f0e246a4e88846d46a2240b562078efbf2 100644
--- a/runtime/vm/ast_transformer.cc
+++ b/runtime/vm/ast_transformer.cc
@@ -49,12 +49,6 @@ AstNode* AwaitTransformer::Transform(AstNode* expr) {
}
-LocalScope* AwaitTransformer::NewScope(LocalScope* parent) {
- return new (I) LocalScope(
- parent, parent->function_level(), parent->loop_level());
-}
-
-
LocalVariable* AwaitTransformer::EnsureCurrentTempVar() {
const char* await_temp_prefix = ":await_temp_var_";
const String& cnt_str = String::ZoneHandle(
@@ -119,7 +113,7 @@ void AwaitTransformer::VisitAwaitNode(AwaitNode* node) {
LoadLocalNode* load_result_param = new(I) LoadLocalNode(
Scanner::kNoSourcePos, result_param);
SequenceNode* is_future_branch = new(I) SequenceNode(
- Scanner::kNoSourcePos, NewScope(preamble_->scope()));
+ Scanner::kNoSourcePos, preamble_->scope());
AwaitMarkerNode* await_marker =
new(I) AwaitMarkerNode(AwaitMarkerNode::kNewContinuationState);
await_marker->set_scope(preamble_->scope());
@@ -186,7 +180,7 @@ AstNode* AwaitTransformer::LazyTransform(const Token::Kind logical_op,
const Token::Kind compare_logical_op = (logical_op == Token::kAND) ?
Token::kEQ : Token::kNE;
SequenceNode* eval = new(I) SequenceNode(
- Scanner::kNoSourcePos, NewScope(preamble_->scope()));
+ Scanner::kNoSourcePos, preamble_->scope());
SequenceNode* saved_preamble = preamble_;
preamble_ = eval;
result = Transform(right);
@@ -270,12 +264,12 @@ void AwaitTransformer::VisitUnaryOpNode(UnaryOpNode* node) {
void AwaitTransformer::VisitConditionalExprNode(ConditionalExprNode* node) {
AstNode* new_condition = Transform(node->condition());
SequenceNode* new_true = new(I) SequenceNode(
- Scanner::kNoSourcePos, NewScope(preamble_->scope()));
+ Scanner::kNoSourcePos, preamble_->scope());
SequenceNode* saved_preamble = preamble_;
preamble_ = new_true;
AstNode* new_true_result = Transform(node->true_expr());
SequenceNode* new_false = new(I) SequenceNode(
- Scanner::kNoSourcePos, NewScope(preamble_->scope()));
+ Scanner::kNoSourcePos, preamble_->scope());
preamble_ = new_false;
AstNode* new_false_result = Transform(node->false_expr());
preamble_ = saved_preamble;
« no previous file with comments | « runtime/vm/ast_transformer.h ('k') | runtime/vm/parser.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698