Index: sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart |
=================================================================== |
--- sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart (revision 14876) |
+++ sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart (working copy) |
@@ -920,6 +920,12 @@ |
emitIsTest(cls); |
} |
Set<Element> generated = new Set<Element>(); |
+ // A class that defines a [:call:] method implicitly implements |
+ // [Function]. |
+ if (checkedClasses.contains(compiler.functionClass) |
+ && cls.lookupLocalMember(Compiler.CALL_OPERATOR_NAME) != null) { |
+ generateInterfacesIsTests(compiler.functionClass, emitIsTest, generated); |
+ } |
for (DartType interfaceType in cls.interfaces) { |
generateInterfacesIsTests(interfaceType.element, emitIsTest, generated); |
} |