]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
Separate visiting declaration from visiting declaration statement
authorJürg Billeter <j@bitron.ch>
Sun, 30 Nov 2008 11:02:07 +0000 (11:02 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Sun, 30 Nov 2008 11:02:07 +0000 (11:02 +0000)
2008-11-30  Jürg Billeter  <j@bitron.ch>

* vala/valadeclarationstatement.vala:
* vala/valasymbolresolver.vala:
* gobject/valaccodebasemodule.vala:

Separate visiting declaration from visiting declaration statement

svn path=/trunk/; revision=2093

ChangeLog
gobject/valaccodebasemodule.vala
vala/valadeclarationstatement.vala
vala/valasymbolresolver.vala

index 50f285e7c6316bd244083745b49dca42cdd7daaa..695543999be8b461d2d9048e9ea892773b80d9f4 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-11-30  Jürg Billeter  <j@bitron.ch>
+
+       * vala/valadeclarationstatement.vala:
+       * vala/valasymbolresolver.vala:
+       * gobject/valaccodebasemodule.vala:
+
+       Separate visiting declaration from visiting declaration statement
+
 2008-11-30  Jürg Billeter  <j@bitron.ch>
 
        * ccode/valaccodeassignment.vala:
index a1958fb966fcae03d73ad7307a003461084423dd..e82d468ada42371cea5f86e7b60035b5f8b2e990 100644 (file)
@@ -1266,6 +1266,8 @@ public class Vala.CCodeBaseModule : CCodeModule {
        }
 
        public override void visit_declaration_statement (DeclarationStatement stmt) {
+               stmt.declaration.accept (codegen);
+
                stmt.ccodenode = stmt.declaration.ccodenode;
 
                var local = stmt.declaration as LocalVariable;
index 9e3cc0377be99eb3d2d65ef4bbf1c3240c5e540b..3f6c90e2725d806ec891408f983d8053ab906915 100644 (file)
@@ -54,13 +54,15 @@ public class Vala.DeclarationStatement : CodeNode, Statement {
                this.declaration = declaration;
                this.source_reference = source_reference;
        }
-       
+
        public override void accept (CodeVisitor visitor) {
-               declaration.accept (visitor);
-       
                visitor.visit_declaration_statement (this);
        }
 
+       public override void accept_children (CodeVisitor visitor) {
+               declaration.accept (visitor);
+       }
+
        public override bool check (SemanticAnalyzer analyzer) {
                if (checked) {
                        return !error;
index 5fba17b875b3ff09711408ade49d6e7dda865537..1bd6829563d1dde6504d0cf37b8c3cb5fd04110e 100644 (file)
@@ -323,6 +323,10 @@ public class Vala.SymbolResolver : CodeVisitor {
                unresolved_type.parent_node.replace_type (unresolved_type, resolve_type (unresolved_type));
        }
 
+       public override void visit_declaration_statement (DeclarationStatement stmt) {
+               stmt.accept_children (this);
+       }
+
        public override void visit_local_variable (LocalVariable local) {
                local.accept_children (this);
                if (local.variable_type is ReferenceType) {