| Index: sdk/lib/_internal/compiler/implementation/closure.dart
|
| ===================================================================
|
| --- sdk/lib/_internal/compiler/implementation/closure.dart (revision 23339)
|
| +++ sdk/lib/_internal/compiler/implementation/closure.dart (working copy)
|
| @@ -112,8 +112,11 @@
|
| // classes (since the emitter sorts classes by their id).
|
| compiler.getNextFreeClassId(),
|
| STATE_DONE) {
|
| - compiler.closureClass.ensureResolved(compiler);
|
| - supertype = compiler.closureClass.computeType(compiler);
|
| + ClassElement superclass = methodElement.isInstanceMember()
|
| + ? compiler.boundClosureClass
|
| + : compiler.closureClass;
|
| + superclass.ensureResolved(compiler);
|
| + supertype = superclass.computeType(compiler);
|
| interfaces = const Link<DartType>();
|
| allSupertypes = const Link<DartType>().prepend(supertype);
|
| thisType = rawType = new InterfaceType(this);
|
|
|