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 3ce91e9c1d768069bb01fbf2e1926dd28198bcb7..eff52a963ce4d627bbbe0cf6e210b79d5689c973 100644 |
--- a/sdk/lib/_internal/compiler/implementation/enqueue.dart |
+++ b/sdk/lib/_internal/compiler/implementation/enqueue.dart |
@@ -320,13 +320,11 @@ abstract class Enqueuer { |
/// needed for reflection. |
void enqueueReflectiveMember(Element element, bool enclosingWasIncluded) { |
if (shouldIncludeElementDueToMirrors(element, |
- includedEnclosing: enclosingWasIncluded)) { |
+ includedEnclosing: enclosingWasIncluded) |
+ // Do not enqueue typedefs. |
+ && !element.impliesType) { |
logEnqueueReflectiveAction(element); |
- if (element.isTypedef) { |
- TypedefElement typedef = element; |
- typedef.ensureResolved(compiler); |
- compiler.world.allTypedefs.add(element); |
- } else if (Elements.isStaticOrTopLevel(element)) { |
+ if (Elements.isStaticOrTopLevel(element)) { |
registerStaticUse(element.declaration); |
} else if (element.isInstanceMember) { |
// We need to enqueue all members matching this one in subclasses, as |