| 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 c700d5924fe2a0ed6950bdf43548d8307920e0ba..47150a055febcbc1177a5ad64f11e637e76a83cf 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/enqueue.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/enqueue.dart
|
| @@ -85,7 +85,8 @@ abstract class Enqueuer {
|
| EnqueueTask task;
|
| native.NativeEnqueuer nativeEnqueuer; // Set by EnqueueTask
|
|
|
| - bool hasEnqueuedReflectiveElements = false;
|
| + bool hasEnqueuedEverything = false;
|
| + bool hasEnqueuedReflectiveStaticFields = false;
|
|
|
| Enqueuer(this.name, this.compiler, this.itemCompilationContextCreator);
|
|
|
| @@ -359,7 +360,7 @@ abstract class Enqueuer {
|
| }
|
|
|
| void enqueueEverything() {
|
| - if (hasEnqueuedReflectiveElements) return;
|
| + if (hasEnqueuedEverything) return;
|
| compiler.log('Enqueuing everything');
|
| task.ensureAllElementsByName();
|
| for (Link link in task.allElementsByName.values) {
|
| @@ -367,14 +368,15 @@ abstract class Enqueuer {
|
| pretendElementWasUsed(element, compiler.globalDependencies);
|
| }
|
| }
|
| - hasEnqueuedReflectiveElements = true;
|
| + hasEnqueuedEverything = true;
|
| + hasEnqueuedReflectiveStaticFields = true;
|
| }
|
|
|
| /// Enqueue the static fields that have been marked as used by reflective
|
| /// usage through `MirrorsUsed`.
|
| void enqueueReflectiveStaticFields(Iterable<Element> elements) {
|
| - if (hasEnqueuedReflectiveElements) return;
|
| - hasEnqueuedReflectiveElements = true;
|
| + if (hasEnqueuedReflectiveStaticFields) return;
|
| + hasEnqueuedReflectiveStaticFields = true;
|
| for (Element element in elements) {
|
| pretendElementWasUsed(element, compiler.globalDependencies);
|
| }
|
|
|