Index: pkg/compiler/lib/src/compile_time_constants.dart |
diff --git a/pkg/compiler/lib/src/compile_time_constants.dart b/pkg/compiler/lib/src/compile_time_constants.dart |
index 724e6f669eca41b3b3742ed62d178f622b6ba15a..45d6e6b6a3e9bbdc13344e3a590d49fd93b063b2 100644 |
--- a/pkg/compiler/lib/src/compile_time_constants.dart |
+++ b/pkg/compiler/lib/src/compile_time_constants.dart |
@@ -1187,7 +1187,9 @@ class ConstructorEvaluator extends CompileTimeConstantEvaluator { |
* the [fieldValues] map. |
*/ |
void evaluateConstructorInitializers() { |
- if (constructor.isSynthesized) { |
+ ResolvedAst resolvedAst = |
+ compiler.resolution.getResolvedAst(constructor.declaration); |
Siggi Cherem (dart-lang)
2016/05/14 00:26:30
constructor.declaration.resolvedAst :)
Johnni Winther
2016/05/18 10:19:50
Done.
|
+ if (resolvedAst.kind != ResolvedAstKind.PARSED) { |
List<AstConstant> compiledArguments = <AstConstant>[]; |
Function compileArgument = (element) => definitions[element]; |
@@ -1198,7 +1200,7 @@ class ConstructorEvaluator extends CompileTimeConstantEvaluator { |
evaluateSuperOrRedirectSend(compiledArguments, target); |
return; |
} |
- FunctionExpression functionNode = constructor.node; |
+ FunctionExpression functionNode = resolvedAst.node; |
NodeList initializerList = functionNode.initializers; |
bool foundSuperOrRedirect = false; |