Index: pkg/dev_compiler/lib/src/compiler/code_generator.dart |
diff --git a/pkg/dev_compiler/lib/src/compiler/code_generator.dart b/pkg/dev_compiler/lib/src/compiler/code_generator.dart |
index 2896c7aab3125bd45c31303d678a205076ff3844..fc4af138944fd14f52600581d94202f810cb3e14 100644 |
--- a/pkg/dev_compiler/lib/src/compiler/code_generator.dart |
+++ b/pkg/dev_compiler/lib/src/compiler/code_generator.dart |
@@ -4802,7 +4802,8 @@ class CodeGenerator extends Object |
result = _callHelper('bind(this, #, #)', |
[safeName, _emitTargetAccess(jsTarget, name, accessor)]); |
} else if (_isObjectMemberCall(target, memberName)) { |
- result = _callHelper('bind(#, #, #.#)', |
+ result = _callHelper( |
Jennifer Messerly
2017/06/22 22:13:03
since we have just 4 of these (see `isObjectMember
vsm
2017/06/22 23:01:01
I don't think tearing these off is that common. W
|
+ 'bind(#, #, function (...args) { return #.#.apply(null, [this].concat(args)); })', |
[jsTarget, _propertyName(memberName), _runtimeModule, memberName]); |
} else { |
result = _callHelper('bind(#, #)', [jsTarget, safeName]); |