| Index: pkg/front_end/lib/src/fasta/type_inference/type_inferrer.dart
|
| diff --git a/pkg/front_end/lib/src/fasta/type_inference/type_inferrer.dart b/pkg/front_end/lib/src/fasta/type_inference/type_inferrer.dart
|
| index e6b316deb0ee62af509710e3d81e372a87e95cd2..66de118a5f1f852fbd1541c1c8b157df5e5d7cba 100644
|
| --- a/pkg/front_end/lib/src/fasta/type_inference/type_inferrer.dart
|
| +++ b/pkg/front_end/lib/src/fasta/type_inference/type_inferrer.dart
|
| @@ -38,6 +38,7 @@ import 'package:kernel/ast.dart'
|
| SuperPropertyGet,
|
| SuperPropertySet,
|
| TypeParameterType,
|
| + VariableDeclaration,
|
| VoidType;
|
| import 'package:kernel/class_hierarchy.dart';
|
| import 'package:kernel/core_types.dart';
|
| @@ -635,11 +636,13 @@ abstract class TypeInferrerImpl extends TypeInferrer {
|
| int fileOffset,
|
| PropertyGet desugaredGet,
|
| DartType typeContext,
|
| - bool typeNeeded) {
|
| + bool typeNeeded,
|
| + {VariableDeclaration receiverVariable}) {
|
| typeNeeded =
|
| listener.propertyGetEnter(expression, typeContext) || typeNeeded;
|
| // First infer the receiver so we can look up the getter that was invoked.
|
| var receiverType = inferExpression(receiver, null, true);
|
| + receiverVariable?.type = receiverType;
|
| Member interfaceMember =
|
| findInterfaceMember(receiverType, desugaredGet.name, fileOffset);
|
| if (isTopLevel &&
|
|
|