| Index: pkg/compiler/lib/src/js_emitter/class_stub_generator.dart
|
| diff --git a/pkg/compiler/lib/src/js_emitter/class_stub_generator.dart b/pkg/compiler/lib/src/js_emitter/class_stub_generator.dart
|
| index 366ede2e704e2271e54b6943d4f95c70e6ed3926..b971f3d40505583bd1189f5c392838f364f14869 100644
|
| --- a/pkg/compiler/lib/src/js_emitter/class_stub_generator.dart
|
| +++ b/pkg/compiler/lib/src/js_emitter/class_stub_generator.dart
|
| @@ -143,7 +143,7 @@ class ClassStubGenerator {
|
| return jsNames;
|
| }
|
|
|
| - jsAst.Expression generateStubForNoSuchMethod(Selector selector) {
|
| + StubMethod generateStubForNoSuchMethod(String name, Selector selector) {
|
| // Values match JSInvocationMirror in js-helper library.
|
| int type = selector.invocationMirrorKind;
|
| List<String> parameterNames =
|
| @@ -177,11 +177,13 @@ class ClassStubGenerator {
|
| new jsAst.ArrayInitializer(parameterNames.map(js).toList()),
|
| 'namedArguments': new jsAst.ArrayInitializer(argNames)});
|
|
|
| + jsAst.Expression function;
|
| if (backend.isInterceptedName(selector.name)) {
|
| - return js(r'function($receiver, #) { return # }',
|
| - [parameterNames, expression]);
|
| + function = js(r'function($receiver, #) { return # }',
|
| + [parameterNames, expression]);
|
| } else {
|
| - return js(r'function(#) { return # }', [parameterNames, expression]);
|
| + function = js(r'function(#) { return # }', [parameterNames, expression]);
|
| }
|
| + return new StubMethod(name, function);
|
| }
|
| }
|
|
|