From: Rico Tzschichholz Date: Wed, 5 Feb 2020 07:32:53 +0000 (+0100) Subject: vala: Don't ignore errors in Parameter and acknowledge them further X-Git-Tag: 0.47.91~11 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=91b7b02916c34922bb6afd853d6d3764ac33def5;p=thirdparty%2Fvala.git vala: Don't ignore errors in Parameter and acknowledge them further This avoids useless subsequent errors and possible criticals while operating on broken AST. --- diff --git a/vala/valacreationmethod.vala b/vala/valacreationmethod.vala index 3c0b22992..89db56abe 100644 --- a/vala/valacreationmethod.vala +++ b/vala/valacreationmethod.vala @@ -107,7 +107,9 @@ public class Vala.CreationMethod : Method { int i = 0; foreach (Parameter param in get_parameters()) { - param.check (context); + if (!param.check (context)) { + error = true; + } if (i == 0 && param.ellipsis && body != null) { error = true; Report.error (param.source_reference, "Named parameter required before `...'"); diff --git a/vala/valadelegate.vala b/vala/valadelegate.vala index b9db0b287..abe9f8634 100644 --- a/vala/valadelegate.vala +++ b/vala/valadelegate.vala @@ -318,7 +318,9 @@ public class Vala.Delegate : TypeSymbol, Callable { } foreach (Parameter param in parameters) { - param.check (context); + if (!param.check (context)) { + error = true; + } } if (error_types != null) { diff --git a/vala/valamethod.vala b/vala/valamethod.vala index f6ce67d31..f5b22131a 100644 --- a/vala/valamethod.vala +++ b/vala/valamethod.vala @@ -823,7 +823,10 @@ public class Vala.Method : Subroutine, Callable { var optional_param = false; foreach (Parameter param in parameters) { - param.check (context); + if (!param.check (context)) { + error = true; + continue; + } if (coroutine && param.direction == ParameterDirection.REF) { error = true; Report.error (param.source_reference, "Reference parameters are not supported for async methods"); diff --git a/vala/valasignal.vala b/vala/valasignal.vala index c6390c0a3..f7b987994 100644 --- a/vala/valasignal.vala +++ b/vala/valasignal.vala @@ -217,7 +217,9 @@ public class Vala.Signal : Symbol, Callable { return false; } - param.check (context); + if (!param.check (context)) { + error = true; + } } if (!is_virtual && body != null) {