diff options
author | Rico Tzschichholz <ricotz@ubuntu.com> | 2022-08-01 14:32:06 +0200 |
---|---|---|
committer | Rico Tzschichholz <ricotz@ubuntu.com> | 2022-08-09 08:44:28 +0200 |
commit | 661f08ea4d92c37a566b388c543240ac71cef6dd (patch) | |
tree | 4528bc32d0f5a5588fae909131f66680cb78b037 /vala/valasignal.vala | |
parent | e74724d2646b0cda103984f1d6c4045db2262726 (diff) | |
download | vala-661f08ea4d92c37a566b388c543240ac71cef6dd.tar.gz |
vala: Enforce required type-arguments on parameter/return types of callables
This stricter check applies to delegate types in source files only.
Fixes https://gitlab.gnome.org/GNOME/vala/issues/1342
Diffstat (limited to 'vala/valasignal.vala')
-rw-r--r-- | vala/valasignal.vala | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/vala/valasignal.vala b/vala/valasignal.vala index ffd5a760a..2b5005e3b 100644 --- a/vala/valasignal.vala +++ b/vala/valasignal.vala @@ -206,6 +206,12 @@ public class Vala.Signal : Symbol, Callable { } return_type.check (context); + if (!external_package) { + context.analyzer.check_type (return_type); + if (return_type is DelegateType) { + return_type.check_type_arguments (context); + } + } if (return_type.type_symbol == context.analyzer.va_list_type.type_symbol) { error = true; |