]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
dova: Do not support array or object member initializers
authorJürg Billeter <j@bitron.ch>
Sat, 13 Mar 2010 19:23:19 +0000 (20:23 +0100)
committerJürg Billeter <j@bitron.ch>
Sat, 13 Mar 2010 19:25:57 +0000 (20:25 +0100)
vala/valaparser.vala

index c900b7196ed5e50df1278867c4fc1d276d42bff8..2f03484504d3fefb1c65db15b32efbe37526d55f 100644 (file)
@@ -550,7 +550,11 @@ public class Vala.Parser : CodeVisitor {
                        expr = parse_literal ();
                        break;
                case TokenType.OPEN_BRACE:
-                       expr = parse_initializer ();
+                       if (context.profile == Profile.DOVA) {
+                               expr = parse_simple_name ();
+                       } else {
+                               expr = parse_initializer ();
+                       }
                        break;
                case TokenType.OPEN_PARENS:
                        expr = parse_tuple ();
@@ -830,7 +834,7 @@ public class Vala.Parser : CodeVisitor {
                } while (accept (TokenType.OPEN_BRACKET));
 
                InitializerList initializer = null;
-               if (current () == TokenType.OPEN_BRACE) {
+               if (context.profile != Profile.DOVA && current () == TokenType.OPEN_BRACE) {
                        initializer = parse_initializer ();
                }
                var expr = new ArrayCreationExpression (element_type, size_specifier_list.size, initializer, get_src (begin));
@@ -844,7 +848,7 @@ public class Vala.Parser : CodeVisitor {
 
        List<MemberInitializer> parse_object_initializer () throws ParseError {
                var list = new ArrayList<MemberInitializer> ();
-               if (accept (TokenType.OPEN_BRACE)) {
+               if (context.profile != Profile.DOVA && accept (TokenType.OPEN_BRACE)) {
                        do {
                                list.add (parse_member_initializer ());
                        } while (accept (TokenType.COMMA));