Index: dart/pkg/compiler/lib/src/enqueue.dart |
diff --git a/dart/pkg/compiler/lib/src/enqueue.dart b/dart/pkg/compiler/lib/src/enqueue.dart |
index fb8c2cf4de33360c1b681b1dc058716d8f147fc8..c2638b43a5d7c4614ad18ad30d4e461e8a36882c 100644 |
--- a/dart/pkg/compiler/lib/src/enqueue.dart |
+++ b/dart/pkg/compiler/lib/src/enqueue.dart |
@@ -812,10 +812,13 @@ class CodegenEnqueuer extends Enqueuer { |
final Set<Element> newlyEnqueuedElements; |
+ final Set<Selector> newlySeenSelectors; |
+ |
CodegenEnqueuer(Compiler compiler, |
ItemCompilationContext itemCompilationContextCreator()) |
: queue = new Queue<CodegenWorkItem>(), |
newlyEnqueuedElements = compiler.cacheStrategy.newSet(), |
+ newlySeenSelectors = compiler.cacheStrategy.newSet(), |
super('codegen enqueuer', compiler, itemCompilationContextCreator); |
bool isProcessed(Element member) => |
@@ -875,6 +878,13 @@ class CodegenEnqueuer extends Enqueuer { |
} |
} |
} |
+ |
+ void handleUnseenSelector(String methodName, Selector selector) { |
+ if (compiler.hasIncrementalSupport) { |
+ newlySeenSelectors.add(selector); |
+ } |
+ super.handleUnseenSelector(methodName, selector); |
+ } |
} |
/// Parameterizes filtering of which work items are enqueued. |