diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2019-11-21 08:37:32 +0100 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2019-11-21 09:16:27 +0100 |
commit | a6112f0e7fe849a19fb26db1a56d55dc81659d25 (patch) | |
tree | c2c818c231f5e89e1bc4982866fce9621d4df4b9 /vala/valamethod.vala | |
parent | 8cd5a579a8a4a6b55c30cdd58387a61ec4b70917 (diff) | |
download | vala-a6112f0e7fe849a19fb26db1a56d55dc81659d25.tar.gz |
vala: Add a basic parameter check for [Print] methods
and add tests to increase coverage
Introdruced with ea8cd97480a7a560cfd8ae3f060f63638b7d9de4
Diffstat (limited to 'vala/valamethod.vala')
-rw-r--r-- | vala/valamethod.vala | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/vala/valamethod.vala b/vala/valamethod.vala index 4af74c759..a105a0d0f 100644 --- a/vala/valamethod.vala +++ b/vala/valamethod.vala @@ -808,6 +808,11 @@ public class Vala.Method : Subroutine, Callable { Report.error (parameters[0].source_reference, "Named parameter required before `...'"); } + if (get_attribute ("Print") != null && (parameters.size != 1 || parameters[0].variable_type.type_symbol != context.analyzer.string_type.type_symbol)) { + error = true; + Report.error (source_reference, "[Print] methods must have exactly one parameter of type `string'"); + } + var optional_param = false; foreach (Parameter param in parameters) { param.check (context); |