| Index: dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| diff --git a/dart/pkg/compiler/lib/src/js_backend/backend.dart b/dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| index 75238e4afa7d0c13f0826c011d8b72b76aa08c14..2ab846f23117a64a65be91e57f4aceda8eaa1085 100644
|
| --- a/dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| +++ b/dart/pkg/compiler/lib/src/js_backend/backend.dart
|
| @@ -557,8 +557,17 @@ class JavaScriptBackend extends Backend {
|
| /**
|
| * Record that [method] is called from a subclass via `super`.
|
| */
|
| - void registerAliasedSuperMember(FunctionElement method) {
|
| - aliasedSuperMembers.add(method);
|
| + bool maybeRegisterAliasedSuperMember(Element member, Selector selector) {
|
| + if (selector.isGetter || compiler.hasIncrementalSupport) {
|
| + // Invoking a super getter isn't supported, this would require changes to
|
| + // compact field descriptors in the emitter.
|
| + // We also turn off this optimization in incremental compilation, to
|
| + // avoid having to regenerate a method just because someone started
|
| + // calling it through super.
|
| + return false;
|
| + }
|
| + aliasedSuperMembers.add(member);
|
| + return true;
|
| }
|
|
|
| /**
|
|
|