Index: pkg/compiler/lib/src/constants/expressions.dart |
diff --git a/pkg/compiler/lib/src/constants/expressions.dart b/pkg/compiler/lib/src/constants/expressions.dart |
index aa284cd20ceb174fe169a5ec994c99f4c2c0eed2..13912f560fe550d6329db74b99746578539bda3e 100644 |
--- a/pkg/compiler/lib/src/constants/expressions.dart |
+++ b/pkg/compiler/lib/src/constants/expressions.dart |
@@ -680,8 +680,7 @@ class SymbolConstantExpression extends ConstantExpression { |
@override |
ConstantValue evaluate( |
Environment environment, ConstantSystem constantSystem) { |
- // TODO(johnniwinther): Implement this. |
- throw new UnsupportedError('SymbolConstantExpression.evaluate'); |
+ return constantSystem.createSymbol(environment.compiler, name); |
} |
@override |
@@ -1438,7 +1437,9 @@ class DeferredConstantExpression extends ConstantExpression { |
@override |
ConstantValue evaluate( |
Environment environment, ConstantSystem constantSystem) { |
- return expression.evaluate(environment, constantSystem); |
+ return new DeferredConstantValue( |
+ expression.evaluate(environment, constantSystem), |
+ prefix); |
} |
@override |