| Index: pkg/intl/lib/extract_messages.dart
|
| diff --git a/pkg/intl/lib/extract_messages.dart b/pkg/intl/lib/extract_messages.dart
|
| index 8a6ad529ec09ffde15c899115227fef1abf949a7..66b2258b2287bd9f16bea293601f93801298f868 100644
|
| --- a/pkg/intl/lib/extract_messages.dart
|
| +++ b/pkg/intl/lib/extract_messages.dart
|
| @@ -229,8 +229,11 @@ class MessageFindingVisitor extends GeneralizingASTVisitor {
|
| for (var namedArgument in arguments.where((x) => x is NamedExpression)) {
|
| var name = namedArgument.name.label.name;
|
| var exp = namedArgument.expression;
|
| - var string = exp is SimpleStringLiteral ? exp.value : exp.toString();
|
| - setAttribute(message, name, string);
|
| + var evaluator = new ConstantEvaluator();
|
| + var basicValue = exp.accept(evaluator);
|
| + var value = basicValue == ConstantEvaluator.NOT_A_CONSTANT ?
|
| + exp.toString() : basicValue;
|
| + setAttribute(message, name, value);
|
| }
|
| return message;
|
| }
|
| @@ -258,7 +261,7 @@ class MessageFindingVisitor extends GeneralizingASTVisitor {
|
| }
|
| }
|
|
|
| - void setValue(MainMessage message, String fieldName, String fieldValue) {
|
| + void setValue(MainMessage message, String fieldName, Object fieldValue) {
|
| message[fieldName] = fieldValue;
|
| }
|
|
|
|
|