| Index: pkg/compiler/lib/src/resolution/members.dart
|
| diff --git a/pkg/compiler/lib/src/resolution/members.dart b/pkg/compiler/lib/src/resolution/members.dart
|
| index b02d8bfc6cead4dc4d62982c4183a7c48e0d42a3..844f0b04005dd0f9e24b8672c4c7ad36adaf65aa 100644
|
| --- a/pkg/compiler/lib/src/resolution/members.dart
|
| +++ b/pkg/compiler/lib/src/resolution/members.dart
|
| @@ -1566,7 +1566,7 @@ class ResolverVisitor extends MappingVisitor<ResolutionResult> {
|
| case AccessKind.SUPER_METHOD:
|
| MethodElement superMethod = semantics.element;
|
| superMethod.computeType(resolution);
|
| - if (!callStructure.signatureApplies(superMethod.functionSignature)) {
|
| + if (!callStructure.signatureApplies(superMethod.type)) {
|
| registry.registerFeature(Feature.THROW_NO_SUCH_METHOD);
|
| registry.registerDynamicUse(new DynamicUse(selector, null));
|
| registry.registerFeature(Feature.SUPER_NO_SUCH_METHOD);
|
| @@ -2494,7 +2494,7 @@ class ResolverVisitor extends MappingVisitor<ResolutionResult> {
|
| case AccessKind.LOCAL_FUNCTION:
|
| LocalFunctionElementX function = semantics.element;
|
| function.computeType(resolution);
|
| - if (!callStructure.signatureApplies(function.functionSignature)) {
|
| + if (!callStructure.signatureApplies(function.type)) {
|
| registry.registerFeature(Feature.THROW_NO_SUCH_METHOD);
|
| registry.registerDynamicUse(new DynamicUse(selector, null));
|
| isIncompatibleInvoke = true;
|
| @@ -2662,7 +2662,7 @@ class ResolverVisitor extends MappingVisitor<ResolutionResult> {
|
| case AccessKind.TOPLEVEL_METHOD:
|
| MethodElement method = semantics.element;
|
| method.computeType(resolution);
|
| - if (!callStructure.signatureApplies(method.functionSignature)) {
|
| + if (!callStructure.signatureApplies(method.type)) {
|
| registry.registerFeature(Feature.THROW_NO_SUCH_METHOD);
|
| registry.registerDynamicUse(new DynamicUse(selector, null));
|
| isIncompatibleInvoke = true;
|
| @@ -3841,7 +3841,7 @@ class ResolverVisitor extends MappingVisitor<ResolutionResult> {
|
| case ConstructorResultKind.GENERATIVE:
|
| // Ensure that the signature of [constructor] has been computed.
|
| constructor.computeType(resolution);
|
| - if (!callStructure.signatureApplies(constructor.functionSignature)) {
|
| + if (!callStructure.signatureApplies(constructor.type)) {
|
| isInvalid = true;
|
| kind = ConstructorAccessKind.INCOMPATIBLE;
|
| registry.registerFeature(Feature.THROW_NO_SUCH_METHOD);
|
| @@ -3852,7 +3852,7 @@ class ResolverVisitor extends MappingVisitor<ResolutionResult> {
|
| case ConstructorResultKind.FACTORY:
|
| // Ensure that the signature of [constructor] has been computed.
|
| constructor.computeType(resolution);
|
| - if (!callStructure.signatureApplies(constructor.functionSignature)) {
|
| + if (!callStructure.signatureApplies(constructor.type)) {
|
| // The effective target might still be valid(!) so the is not an
|
| // invalid case in itself. For instance
|
| //
|
|
|