Index: runtime/vm/parser.cc |
diff --git a/runtime/vm/parser.cc b/runtime/vm/parser.cc |
index b4153c3eeddffc5b413d56c8991e5272413a1bd5..51bca8edb4ca6ceafe29d1e8a11f00b97bdd2c92 100644 |
--- a/runtime/vm/parser.cc |
+++ b/runtime/vm/parser.cc |
@@ -11837,7 +11837,8 @@ AstNode* Parser::ParseSelectors(AstNode* primary, bool is_cascade) { |
type ^= CanonicalizeType(type); |
// Type may be malbounded, but not malformed. |
ASSERT(!type.IsMalformed()); |
- array = new (Z) TypeNode(primary_pos, type); |
+ array = new (Z) TypeNode(primary_pos, type, |
+ primary_node->is_deferred_reference()); |
} else if (primary_node->primary().IsTypeParameter()) { |
array = LoadTypeParameter(primary_node); |
} else { |
@@ -11931,7 +11932,8 @@ AstNode* Parser::ParseSelectors(AstNode* primary, bool is_cascade) { |
type ^= CanonicalizeType(type); |
// Type may be malbounded, but not malformed. |
ASSERT(!type.IsMalformed()); |
- selector = new (Z) TypeNode(primary_pos, type); |
+ selector = new (Z) TypeNode(primary_pos, type, |
+ primary_node->is_deferred_reference()); |
} else { |
UNREACHABLE(); // Internal parser error. |
} |
@@ -11957,7 +11959,8 @@ AstNode* Parser::ParseSelectors(AstNode* primary, bool is_cascade) { |
type = CanonicalizeType(type); |
// Type may be malbounded, but not malformed. |
ASSERT(!type.IsMalformed()); |
- left = new (Z) TypeNode(primary_pos, type); |
+ left = new (Z) TypeNode(primary_pos, type, |
+ primary_node->is_deferred_reference()); |
} else if (primary_node->primary().IsTypeParameter()) { |
left = LoadTypeParameter(primary_node); |
} else if (primary_node->IsSuper()) { |
@@ -12878,7 +12881,8 @@ AstNode* Parser::ResolveIdent(TokenPosition ident_pos, |
type ^= CanonicalizeType(type); |
// Type may be malbounded, but not malformed. |
ASSERT(!type.IsMalformed()); |
- resolved = new (Z) TypeNode(primary_pos, type); |
+ resolved = |
+ new (Z) TypeNode(primary_pos, type, primary->is_deferred_reference()); |
} |
} |
return resolved; |