| Index: sdk/lib/_internal/compiler/implementation/enqueue.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/enqueue.dart b/sdk/lib/_internal/compiler/implementation/enqueue.dart
|
| index 9dc052b8f3e02bba3d905038608bf356762a5f41..32c71ab01c313d1c8a9df0b1df0a367e058b0ba9 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/enqueue.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/enqueue.dart
|
| @@ -87,11 +87,9 @@ abstract class Enqueuer {
|
| bool addElementToWorkList(Element element, [TreeElements elements]);
|
|
|
| void registerInstantiatedType(InterfaceType type) {
|
| + ClassElement cls = type.element;
|
| + cls.ensureResolved(compiler);
|
| universe.instantiatedTypes.add(type);
|
| - registerInstantiatedClass(type.element);
|
| - }
|
| -
|
| - void registerInstantiatedClass(ClassElement cls) {
|
| if (universe.instantiatedClasses.contains(cls)) return;
|
| if (!cls.isAbstract(compiler)) {
|
| universe.instantiatedClasses.add(cls);
|
| @@ -100,6 +98,11 @@ abstract class Enqueuer {
|
| compiler.backend.registerInstantiatedClass(cls, this);
|
| }
|
|
|
| + void registerInstantiatedClass(ClassElement cls) {
|
| + cls.ensureResolved(compiler);
|
| + registerInstantiatedType(cls.rawType);
|
| + }
|
| +
|
| bool checkNoEnqueuedInvokedInstanceMethods() {
|
| task.measure(() {
|
| // Run through the classes and see if we need to compile methods.
|
|
|