From: Jürg Billeter Date: Sat, 5 Jun 2010 07:47:15 +0000 (+0200) Subject: dova: Support string templates X-Git-Tag: 0.9.1~21 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0abc1a642fca388bbecc676ef235fe7fc5e5d764;p=thirdparty%2Fvala.git dova: Support string templates --- diff --git a/vala/valatemplate.vala b/vala/valatemplate.vala index c22fe389f..90cefe067 100644 --- a/vala/valatemplate.vala +++ b/vala/valatemplate.vala @@ -71,11 +71,18 @@ public class Vala.Template : Expression { } else { expr = stringify (expression_list[0]); if (expression_list.size > 1) { - var concat = new MethodCall (new MemberAccess (expr, "concat", source_reference), source_reference); - for (int i = 1; i < expression_list.size; i++) { - concat.add_argument (stringify (expression_list[i])); + if (analyzer.context.profile == Profile.DOVA) { + // varargs concat not yet supported + for (int i = 1; i < expression_list.size; i++) { + expr = new BinaryExpression (BinaryOperator.PLUS, expr, stringify (expression_list[i]), source_reference); + } + } else { + var concat = new MethodCall (new MemberAccess (expr, "concat", source_reference), source_reference); + for (int i = 1; i < expression_list.size; i++) { + concat.add_argument (stringify (expression_list[i])); + } + expr = concat; } - expr = concat; } } expr.target_type = target_type;