diff options
-rw-r--r-- | vala/valaarraycreationexpression.vala | 10 | ||||
-rw-r--r-- | vala/valainitializerlist.vala | 6 | ||||
-rw-r--r-- | vala/valamemberinitializer.vala | 4 | ||||
-rw-r--r-- | vala/valaobjectcreationexpression.vala | 4 |
4 files changed, 24 insertions, 0 deletions
diff --git a/vala/valaarraycreationexpression.vala b/vala/valaarraycreationexpression.vala index 3b52748ff..ec29ce800 100644 --- a/vala/valaarraycreationexpression.vala +++ b/vala/valaarraycreationexpression.vala @@ -260,4 +260,14 @@ public class Vala.ArrayCreationExpression : Expression { codegen.visit_expression (this); } + + public override void get_used_variables (Collection<Variable> collection) { + foreach (Expression e in sizes) { + e.get_used_variables (collection); + } + + if (initializer_list != null) { + initializer_list.get_used_variables (collection); + } + } } diff --git a/vala/valainitializerlist.vala b/vala/valainitializerlist.vala index edd98570c..6955aad1e 100644 --- a/vala/valainitializerlist.vala +++ b/vala/valainitializerlist.vala @@ -224,4 +224,10 @@ public class Vala.InitializerList : Expression { codegen.visit_expression (this); } + + public override void get_used_variables (Collection<Variable> collection) { + foreach (Expression expr in initializers) { + expr.get_used_variables (collection); + } + } } diff --git a/vala/valamemberinitializer.vala b/vala/valamemberinitializer.vala index c5e5d8255..352b1ffa4 100644 --- a/vala/valamemberinitializer.vala +++ b/vala/valamemberinitializer.vala @@ -76,6 +76,10 @@ public class Vala.MemberInitializer : CodeNode { initializer.emit (codegen); } + public override void get_used_variables (Collection<Variable> collection) { + initializer.get_used_variables (collection); + } + public override void replace_expression (Expression old_node, Expression new_node) { if (initializer == old_node) { initializer = new_node; diff --git a/vala/valaobjectcreationexpression.vala b/vala/valaobjectcreationexpression.vala index e64b85244..daf31137d 100644 --- a/vala/valaobjectcreationexpression.vala +++ b/vala/valaobjectcreationexpression.vala @@ -479,5 +479,9 @@ public class Vala.ObjectCreationExpression : Expression { foreach (Expression arg in argument_list) { arg.get_used_variables (collection); } + + foreach (MemberInitializer init in object_initializer) { + init.get_used_variables (collection); + } } } |