| Index: pkg/compiler/lib/src/ssa/builder.dart
|
| diff --git a/pkg/compiler/lib/src/ssa/builder.dart b/pkg/compiler/lib/src/ssa/builder.dart
|
| index 0c8e57cef78dbe63d0496fdaa7660a8dfbe73192..6bc30e8cd1b2b0a7687a4e34c7384c39fdd16693 100644
|
| --- a/pkg/compiler/lib/src/ssa/builder.dart
|
| +++ b/pkg/compiler/lib/src/ssa/builder.dart
|
| @@ -4551,7 +4551,10 @@ class SsaBuilder extends ast.Visitor
|
| String name = selector.name;
|
|
|
| ClassElement cls = currentNonClosureClass;
|
| - Element element = cls.lookupSuperMember(Identifiers.noSuchMethod_);
|
| + MethodElement element = cls.lookupSuperMember(Identifiers.noSuchMethod_);
|
| + if (!Selectors.noSuchMethod_.signatureApplies(element)) {
|
| + element = coreClasses.objectClass.lookupMember(Identifiers.noSuchMethod_);
|
| + }
|
| if (compiler.enabledInvokeOn && !element.enclosingClass.isObject) {
|
| // Register the call as dynamic if [noSuchMethod] on the super
|
| // class is _not_ the default implementation from [Object], in
|
| @@ -4691,6 +4694,15 @@ class SsaBuilder extends ast.Visitor
|
| }
|
|
|
| @override
|
| + void visitUnresolvedSuperSet(
|
| + ast.Send node,
|
| + Element element,
|
| + ast.Node rhs,
|
| + _) {
|
| + handleUnresolvedSuperInvoke(node);
|
| + }
|
| +
|
| + @override
|
| void visitSuperSetterGet(
|
| ast.Send node,
|
| MethodElement setter,
|
|
|