From: Jürg Billeter Date: Wed, 19 Nov 2008 23:11:08 +0000 (+0000) Subject: Correct source file dependencies for catch clauses, fixes bug 561437 X-Git-Tag: VALA_0_5_2~76 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=7cec9bf86ccbff7961e4e2d13593c6c9d42e07b4;p=thirdparty%2Fvala.git Correct source file dependencies for catch clauses, fixes bug 561437 2008-11-20 Jürg Billeter * vala/valacatchclause.vala: * vala/valaerrortype.vala: Correct source file dependencies for catch clauses, fixes bug 561437 svn path=/trunk/; revision=2035 --- diff --git a/ChangeLog b/ChangeLog index 89a28abed..df23535ce 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,9 +1,17 @@ +2008-11-20 Jürg Billeter + + * vala/valacatchclause.vala: + * vala/valaerrortype.vala: + + Correct source file dependencies for catch clauses, + fixes bug 561437 + 2008-11-19 Jürg Billeter * vala/valatypeofexpression.vala: Include C header files for types used in typeof expressions, - fixes bug 559454 + fixes bug 559494 2008-11-19 Jürg Billeter diff --git a/THANKS b/THANKS index 810b92b5b..8ddab6c59 100644 --- a/THANKS +++ b/THANKS @@ -64,6 +64,7 @@ Roland Hostettler Ross Burton Sam Liddicott Samuel Cormier-Iijima +Sebastian Dröge Stéphan Kochen Tai Chi Minh Ralph Eastwood Thijs Vermeir diff --git a/vala/valacatchclause.vala b/vala/valacatchclause.vala index cb6d2a693..60fa176eb 100644 --- a/vala/valacatchclause.vala +++ b/vala/valacatchclause.vala @@ -103,8 +103,6 @@ public class Vala.CatchClause : CodeNode { checked = true; if (error_type != null) { - analyzer.current_source_file.add_type_dependency (error_type, SourceFileDependencyType.SOURCE); - error_variable = new LocalVariable (error_type.copy (), variable_name); body.scope.add (variable_name, error_variable); @@ -117,6 +115,8 @@ public class Vala.CatchClause : CodeNode { error_type.check (analyzer); + analyzer.current_source_file.add_type_dependency (error_type, SourceFileDependencyType.SOURCE); + body.check (analyzer); return !error; diff --git a/vala/valaerrortype.vala b/vala/valaerrortype.vala index 0e3ff6047..8d19cb3c0 100644 --- a/vala/valaerrortype.vala +++ b/vala/valaerrortype.vala @@ -129,4 +129,11 @@ public class Vala.ErrorType : ReferenceType { public override bool is_reference_type_or_type_parameter () { return true; } + + public override bool check (SemanticAnalyzer analyzer) { + if (error_domain != null) { + return error_domain.check (analyzer); + } + return true; + } }