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 a44e76fada8c41e63ca20e98eedfc4301a719108..8d7f4bf6f872c93b4a909ea341c452e6d2cf432a 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 |
@@ -808,10 +808,12 @@ abstract class TypeInferrerImpl extends TypeInferrer { |
receiverVariable?.type = receiverType; |
} |
bool isOverloadedArithmeticOperator = false; |
- interfaceMember ??= |
- findMethodInvocationMember(receiverType, desugaredInvocation); |
- methodName ??= desugaredInvocation.name; |
- arguments ??= desugaredInvocation.arguments; |
+ if (desugaredInvocation != null) { |
+ interfaceMember = |
+ findMethodInvocationMember(receiverType, desugaredInvocation); |
+ methodName = desugaredInvocation.name; |
+ arguments = desugaredInvocation.arguments; |
+ } |
if (interfaceMember is Procedure) { |
isOverloadedArithmeticOperator = typeSchemaEnvironment |
.isOverloadedArithmeticOperatorAndType(interfaceMember, receiverType); |