Store NullType as the callee types, we don't use them.

R=brianwilkerson@google.com, paulberry@google.com

Bug:
Change-Id: I01ee27c6c54cef559fd3cf8dd871d644cae832e3
Reviewed-on: https://dart-review.googlesource.com/34560
Reviewed-by: Paul Berry <paulberry@google.com>
Commit-Queue: Konstantin Shcheglov <scheglov@google.com>
This commit is contained in:
Konstantin Shcheglov 2018-01-16 17:19:42 +00:00 committed by commit-bot@chromium.org
parent d09b922203
commit 3c2b4a7826

View file

@ -427,7 +427,7 @@ class ResolutionStorer extends TypeInferenceListener {
if (!isImplicitCall) {
interfaceMember = _getRealTarget(interfaceMember);
_replaceReference(interfaceMember);
_replaceType(calleeType);
_replaceType(const NullType()); // callee type
}
super.genericExpressionExit("methodInvocation", expression, inferredType);
}
@ -453,7 +453,7 @@ class ResolutionStorer extends TypeInferenceListener {
if (!isImplicitCall) {
_replaceReference(const NullNode('explicit-call'));
_replaceType(const NullType());
_replaceType(const NullType()); // callee type
}
super.genericExpressionExit("methodInvocation", expression, inferredType);
}
@ -604,7 +604,7 @@ class ResolutionStorer extends TypeInferenceListener {
? calleeType
: substitution.substituteType(calleeType.withoutTypeParameters);
_replaceType(invokeType);
_replaceType(calleeType);
_replaceType(const NullType()); // callee type
super.genericExpressionExit("staticInvocation", expression, inferredType);
}