From: Jürg Billeter Date: Wed, 10 Feb 2010 14:38:02 +0000 (+0100) Subject: Fix error handling checks in switch statements X-Git-Tag: 0.8.0~287 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e5a2f991e7e5799cf70e8edc12fd2c25c7f6625b;p=thirdparty%2Fvala.git Fix error handling checks in switch statements --- diff --git a/vala/valaswitchsection.vala b/vala/valaswitchsection.vala index 7b7cc9544..334f6a7e8 100644 --- a/vala/valaswitchsection.vala +++ b/vala/valaswitchsection.vala @@ -1,6 +1,6 @@ /* valaswitchsection.vala * - * Copyright (C) 2006-2009 Jürg Billeter + * Copyright (C) 2006-2010 Jürg Billeter * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -107,6 +107,11 @@ public class Vala.SwitchSection : Block { local.active = false; } + // use get_statements () instead of statement_list to not miss errors within StatementList objects + foreach (Statement stmt in get_statements ()) { + add_error_types (stmt.get_error_types ()); + } + analyzer.current_symbol = old_symbol; analyzer.insert_block = old_insert_block; diff --git a/vala/valaswitchstatement.vala b/vala/valaswitchstatement.vala index 1b8937ed2..b8341cd5f 100644 --- a/vala/valaswitchstatement.vala +++ b/vala/valaswitchstatement.vala @@ -1,6 +1,6 @@ /* valaswitchstatement.vala * - * Copyright (C) 2006-2009 Jürg Billeter + * Copyright (C) 2006-2010 Jürg Billeter * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -118,6 +118,8 @@ public class Vala.SwitchStatement : CodeNode, Statement { foreach (SwitchSection section in sections) { section.check (analyzer); + + add_error_types (section.get_error_types ()); } return !error;