| Index: pkg/compiler/lib/src/inferrer/inferrer_visitor.dart
|
| diff --git a/pkg/compiler/lib/src/inferrer/inferrer_visitor.dart b/pkg/compiler/lib/src/inferrer/inferrer_visitor.dart
|
| index 5d4623a7b337c2868e58bb6f4819d2d059c74f58..78ef6bb3c3a206fd60075ff8c4c0bda5471e227a 100644
|
| --- a/pkg/compiler/lib/src/inferrer/inferrer_visitor.dart
|
| +++ b/pkg/compiler/lib/src/inferrer/inferrer_visitor.dart
|
| @@ -705,6 +705,7 @@ abstract class InferrerVisitor<T, E extends MinimalInferrerEngine<T>>
|
| implements SemanticSendVisitor<T, dynamic> {
|
| final Compiler compiler;
|
| final AstElement analyzedElement;
|
| + final ResolvedAst resolvedAst;
|
| final TypeSystem<T> types;
|
| final E inferrer;
|
| final Map<JumpTarget, List<LocalsHandler<T>>> breaksFor =
|
| @@ -713,7 +714,8 @@ abstract class InferrerVisitor<T, E extends MinimalInferrerEngine<T>>
|
| new Map<JumpTarget, List<LocalsHandler<T>>>();
|
| LocalsHandler<T> locals;
|
| final List<T> cascadeReceiverStack = new List<T>();
|
| - final TreeElements elements;
|
| +
|
| + TreeElements get elements => resolvedAst.elements;
|
|
|
| bool accumulateIsChecks = false;
|
| bool conditionIsSimple = false;
|
| @@ -733,12 +735,11 @@ abstract class InferrerVisitor<T, E extends MinimalInferrerEngine<T>>
|
| }
|
| }
|
|
|
| - InferrerVisitor(
|
| - AstElement analyzedElement, this.inferrer, this.types, this.compiler,
|
| + InferrerVisitor(AstElement analyzedElement, this.resolvedAst, this.inferrer,
|
| + this.types, this.compiler,
|
| [LocalsHandler<T> handler])
|
| : this.analyzedElement = analyzedElement,
|
| - this.locals = handler,
|
| - this.elements = analyzedElement.resolvedAst.elements {
|
| + this.locals = handler {
|
| if (handler != null) return;
|
| Node node = analyzedElement.node;
|
| FieldInitializationScope<T> fieldScope =
|
|
|