Index: pkg/compiler/lib/src/resolution/send_structure.dart |
diff --git a/pkg/compiler/lib/src/resolution/send_structure.dart b/pkg/compiler/lib/src/resolution/send_structure.dart |
index 5d6aae19698d39a1c2fa9b2abd866870cfa0d2df..1b5b7cd66b260a6cffb4aa3f1e911ceca1fa8a0e 100644 |
--- a/pkg/compiler/lib/src/resolution/send_structure.dart |
+++ b/pkg/compiler/lib/src/resolution/send_structure.dart |
@@ -2116,7 +2116,8 @@ class NewInvokeStructure<R, A> extends NewStructure<R, A> { |
ConstructorElement effectiveTarget = constructor.effectiveTarget; |
ResolutionInterfaceType effectiveTargetType = |
constructor.computeEffectiveTargetType(semantics.type); |
- if (callStructure.signatureApplies(effectiveTarget.type)) { |
+ if (callStructure |
+ .signatureApplies(effectiveTarget.parameterStructure)) { |
return visitor.visitRedirectingFactoryConstructorInvoke( |
node, |
semantics.element, |
@@ -2136,7 +2137,7 @@ class NewInvokeStructure<R, A> extends NewStructure<R, A> { |
arg); |
} |
} |
- if (callStructure.signatureApplies(constructor.type)) { |
+ if (callStructure.signatureApplies(constructor.parameterStructure)) { |
return visitor.visitFactoryConstructorInvoke(node, constructor, |
semantics.type, node.send.argumentsNode, callStructure, arg); |
} |