| Index: sdk/lib/_internal/compiler/implementation/compiler.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/compiler.dart b/sdk/lib/_internal/compiler/implementation/compiler.dart
|
| index f01e964e510c102b25e6a3608f369ab65fb95766..7aefe4c95d7e7c2953caddd762a17a3fe1c8ae66 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/compiler.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/compiler.dart
|
| @@ -58,6 +58,8 @@ class CodegenRegistry extends Registry {
|
|
|
| bool get isForResolution => false;
|
|
|
| + Element get currentElement => treeElements.currentElement;
|
| +
|
| // TODO(johnniwinther): Remove this getter when [Registry] creates a
|
| // dependency node.
|
| Setlet<Element> get otherDependencies => treeElements.otherDependencies;
|
| @@ -82,15 +84,15 @@ class CodegenRegistry extends Registry {
|
| }
|
|
|
| void registerDynamicInvocation(Selector selector) {
|
| - world.registerDynamicInvocation(selector);
|
| + world.registerDynamicInvocation(currentElement, selector);
|
| }
|
|
|
| void registerDynamicSetter(Selector selector) {
|
| - world.registerDynamicSetter(selector);
|
| + world.registerDynamicSetter(currentElement, selector);
|
| }
|
|
|
| void registerDynamicGetter(Selector selector) {
|
| - world.registerDynamicGetter(selector);
|
| + world.registerDynamicGetter(currentElement, selector);
|
| }
|
|
|
| void registerGetterForSuperMethod(Element element) {
|
| @@ -129,7 +131,7 @@ class CodegenRegistry extends Registry {
|
| }
|
|
|
| void registerSelectorUse(Selector selector) {
|
| - world.registerSelectorUse(selector);
|
| + world.registerSelectorUse(currentElement, selector);
|
| }
|
|
|
| void registerFactoryWithTypeArguments() {
|
| @@ -310,8 +312,8 @@ abstract class Backend {
|
| * Call this method to enable [noSuchMethod] handling in the
|
| * backend.
|
| */
|
| - void enableNoSuchMethod(Enqueuer enqueuer) {
|
| - enqueuer.registerInvocation(compiler.noSuchMethodSelector);
|
| + void enableNoSuchMethod(Element context, Enqueuer enqueuer) {
|
| + enqueuer.registerInvocation(null, compiler.noSuchMethodSelector);
|
| }
|
|
|
| /// Call this method to enable support for isolates.
|
| @@ -1400,7 +1402,7 @@ abstract class Compiler implements DiagnosticListener {
|
| enqueuer.codegen.registerGetOfStaticFunction(main);
|
| }
|
| if (enabledNoSuchMethod) {
|
| - backend.enableNoSuchMethod(enqueuer.codegen);
|
| + backend.enableNoSuchMethod(null, enqueuer.codegen);
|
| }
|
| if (compileAll) {
|
| libraryLoader.libraries.forEach((LibraryElement library) {
|
|
|