[vala] Do not warn about non-default parameters for coroutines.
- From: Luca Bruno <lucabru src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [vala] Do not warn about non-default parameters for coroutines.
- Date: Mon, 26 Aug 2013 20:41:55 +0000 (UTC)
commit dd24a1bfe1a78bf1a37d35f5d8dd6480fd4a8941
Author: Luca Bruno <lucabru src gnome org>
Date: Mon Aug 26 22:36:00 2013 +0200
Do not warn about non-default parameters for coroutines.
Reopens bug 644241.
vala/valamethod.vala | 25 ++++++++++++++-----------
1 files changed, 14 insertions(+), 11 deletions(-)
---
diff --git a/vala/valamethod.vala b/vala/valamethod.vala
index d1129d8..663ae6f 100644
--- a/vala/valamethod.vala
+++ b/vala/valamethod.vala
@@ -654,17 +654,20 @@ public class Vala.Method : Subroutine {
Report.error (parameters[0].source_reference, "Named parameter required before
`...'");
}
- var optional_param = false;
- foreach (Parameter param in parameters) {
- param.check (context);
- if (coroutine && param.direction == ParameterDirection.REF) {
- error = true;
- Report.error (param.source_reference, "Reference parameters are not supported
for async methods");
- }
- if (optional_param && param.initializer == null && !param.ellipsis) {
- Report.warning (param.source_reference, "parameter without default follows
parameter with default");
- } else if (param.initializer != null) {
- optional_param = true;
+ if (!coroutine) {
+ // TODO: begin and end parameters must be checked separately for coroutines
+ var optional_param = false;
+ foreach (Parameter param in parameters) {
+ param.check (context);
+ if (coroutine && param.direction == ParameterDirection.REF) {
+ error = true;
+ Report.error (param.source_reference, "Reference parameters are not
supported for async methods");
+ }
+ if (optional_param && param.initializer == null && !param.ellipsis) {
+ Report.warning (param.source_reference, "parameter without default
follows parameter with default");
+ } else if (param.initializer != null) {
+ optional_param = true;
+ }
}
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]