Index: pkg/compiler/lib/src/compiler.dart |
diff --git a/pkg/compiler/lib/src/compiler.dart b/pkg/compiler/lib/src/compiler.dart |
index fc3aed9568803886a58d210bef2039a4ab8caa5b..be888f778cead055357c9d0af3b38534acd6fb2d 100644 |
--- a/pkg/compiler/lib/src/compiler.dart |
+++ b/pkg/compiler/lib/src/compiler.dart |
@@ -1850,6 +1850,9 @@ class _CompilerResolution implements Resolution { |
bool hasResolvedAst(Element element) { |
assert(invariant(element, element.isDeclaration, |
message: "Element $element must be the declaration.")); |
+ if (compiler.serialization.isDeserialized(element)) { |
+ return compiler.serialization.hasResolvedAst(element); |
+ } |
return element is AstElement && |
hasBeenResolved(element) && |
element.hasResolvedAst; |
@@ -1860,6 +1863,9 @@ class _CompilerResolution implements Resolution { |
assert(invariant(element, element.isDeclaration, |
message: "Element $element must be the declaration.")); |
if (hasResolvedAst(element)) { |
+ if (compiler.serialization.isDeserialized(element)) { |
+ return compiler.serialization.getResolvedAst(element); |
+ } |
AstElement astElement = element; |
return astElement.resolvedAst; |
} |