From: Luca Bruno Date: Sun, 19 Dec 2010 09:46:22 +0000 (+0100) Subject: Report error on invalid initializer expression X-Git-Tag: 0.11.3~54 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=84bf66df30f5904fe38b64936a678f59ce505e05;p=thirdparty%2Fvala.git Report error on invalid initializer expression Fixes bug 637521. --- diff --git a/vala/valaarraycreationexpression.vala b/vala/valaarraycreationexpression.vala index 1c72d6b5c..3b52748ff 100644 --- a/vala/valaarraycreationexpression.vala +++ b/vala/valaarraycreationexpression.vala @@ -190,7 +190,9 @@ public class Vala.ArrayCreationExpression : Expression { if (initlist != null) { initlist.target_type = new ArrayType (element_type, rank, source_reference); - initlist.check (context); + if (!initlist.check (context)) { + error = true; + } var ret = create_sizes_from_initializer_list (context, initlist, rank, calc_sizes); if (ret == -1) { diff --git a/vala/valaassignment.vala b/vala/valaassignment.vala index f0b474218..f95906099 100644 --- a/vala/valaassignment.vala +++ b/vala/valaassignment.vala @@ -341,7 +341,7 @@ public class Vala.Assignment : Expression { right.value_type = variable.variable_type; } else { error = true; - Report.error (source_reference, "Assignment: Invalid callback assignment attempt"); + Report.error (source_reference, "Assignment: Invalid assignment attempt"); return false; } } diff --git a/vala/valainitializerlist.vala b/vala/valainitializerlist.vala index 5ed9ba86f..a6208ced9 100644 --- a/vala/valainitializerlist.vala +++ b/vala/valainitializerlist.vala @@ -178,6 +178,7 @@ public class Vala.InitializerList : Expression { foreach (Expression e in get_initializers ()) { if (e.value_type == null) { error = true; + Report.error (e.source_reference, "expression type not allowed as initializer"); continue; }