| Index: pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| diff --git a/pkg/compiler/lib/src/cps_ir/type_propagation.dart b/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| index 027a3d67a972c19c2f67004f01160ababc442565..05690c2e9be5eb8d1284594fbe0a9e5fdb5f81b8 100644
|
| --- a/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| +++ b/pkg/compiler/lib/src/cps_ir/type_propagation.dart
|
| @@ -51,8 +51,8 @@ class TypeMaskSystem {
|
| return inferrer.getGuaranteedReturnTypeOfElement(function);
|
| }
|
|
|
| - TypeMask getSelectorReturnType(Selector selector) {
|
| - return inferrer.getGuaranteedTypeOfSelector(selector);
|
| + TypeMask getSelectorReturnType(Selector selector, TypeMask mask) {
|
| + return inferrer.getGuaranteedTypeOfSelector(selector, mask);
|
| }
|
|
|
| TypeMask getFieldType(FieldElement field) {
|
| @@ -729,7 +729,8 @@ class TypePropagationVisitor implements Visitor {
|
| }
|
| if (!node.selector.isOperator) {
|
| // TODO(jgruber): Handle known methods on constants such as String.length.
|
| - setResult(nonConstant(typeSystem.getSelectorReturnType(node.selector)));
|
| + setResult(nonConstant(
|
| + typeSystem.getSelectorReturnType(node.selector, node.mask)));
|
| return;
|
| }
|
|
|
|
|