| Index: sdk/lib/_internal/compiler/implementation/ssa/optimize.dart
|
| ===================================================================
|
| --- sdk/lib/_internal/compiler/implementation/ssa/optimize.dart (revision 18819)
|
| +++ sdk/lib/_internal/compiler/implementation/ssa/optimize.dart (working copy)
|
| @@ -620,10 +620,15 @@
|
| result.instructionType =
|
| new HType.subtype(field.computeType(compiler), compiler);
|
| } else {
|
| - HType type = backend.optimisticFieldType(field);
|
| + HType type = new HType.inferredForElement(field, compiler);
|
| + if (type.isUnknown()) {
|
| + type = backend.optimisticFieldType(field);
|
| + if (type != null) {
|
| + backend.registerFieldTypesOptimization(
|
| + work.element, field, result.instructionType);
|
| + }
|
| + }
|
| if (type != null) {
|
| - backend.registerFieldTypesOptimization(
|
| - work.element, field, result.instructionType);
|
| result.instructionType = type;
|
| }
|
| }
|
|
|