| Index: pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart
|
| diff --git a/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart b/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart
|
| index bcc96c8b113984b22af0de74f7bdcdc1b12429b0..307857286ca4c930a02cee95839521a828580d82 100644
|
| --- a/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart
|
| +++ b/pkg/compiler/lib/src/inferrer/simple_types_inferrer.dart
|
| @@ -667,16 +667,17 @@ class SimpleTypeInferrerVisitor<T>
|
| if (isThisExposed) return;
|
| inferrer.forEachElementMatching(selector, mask, (element) {
|
| if (element.isField) {
|
| + ResolvedAst elementResolvedAst = getResolvedAst(element);
|
| if (!selector.isSetter &&
|
| isInClassOrSubclass(element) &&
|
| !element.isFinal &&
|
| locals.fieldScope.readField(element) == null &&
|
| - element.initializer == null) {
|
| + elementResolvedAst.body == null) {
|
| // If the field is being used before this constructor
|
| // actually had a chance to initialize it, say it can be
|
| // null.
|
| inferrer.recordTypeOfNonFinalField(
|
| - analyzedElement.node, element, types.nullType);
|
| + resolvedAst.node, element, types.nullType);
|
| }
|
| // Accessing a field does not expose [:this:].
|
| return true;
|
|
|