]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
visit child nodes of object creation expressions for error types
authorJuerg Billeter <j@bitron.ch>
Sat, 23 Feb 2008 13:20:40 +0000 (13:20 +0000)
committerJürg Billeter <juergbi@src.gnome.org>
Sat, 23 Feb 2008 13:20:40 +0000 (13:20 +0000)
2008-02-23  Juerg Billeter  <j@bitron.ch>

* vala/valasemanticanalyzer.vala: visit child nodes of object
  creation expressions for error types

svn path=/trunk/; revision=1034

ChangeLog
vala/valasemanticanalyzer.vala

index c9d39201a51d9b682118321033902e5090bb9e25..2a53d64011d31eb9c3585a4fbdf8ccb65f6bb662 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-02-23  Jürg Billeter  <j@bitron.ch>
+
+       * vala/valasemanticanalyzer.vala: visit child nodes of object
+         creation expressions for error types
+
 2008-02-23  Jürg Billeter  <j@bitron.ch>
 
        * vala/valamethodtype.vala: check whether delegate matches method,
index 9a397da27a3d63abfa36f34829ee433784360862..6f8201f1be4f1af89550d7eaebe3c6539bdc9ef9 100644 (file)
@@ -2182,7 +2182,9 @@ public class Vala.SemanticAnalyzer : CodeVisitor {
                        check_arguments (expr, new MethodType (m), m.get_parameters (), args);
 
                        expr.tree_can_fail = expr.can_fail = (m.get_error_domains ().size > 0);
-               } else if (type is Enum) {
+               } else if (expr.type_reference is ErrorType) {
+                       expr.accept_children (this);
+
                        if (expr.get_argument_list ().size == 0) {
                                expr.error = true;
                                Report.error (expr.source_reference, "Too few arguments, errors need at least 1 argument");