From: Rico Tzschichholz Date: Wed, 21 Nov 2018 09:33:21 +0000 (+0100) Subject: codegen: Add target/destroy type declarations for delegates as needed X-Git-Tag: 0.43.1~66 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f161b99cda373e50a65e33442c1861a27378c929;p=thirdparty%2Fvala.git codegen: Add target/destroy type declarations for delegates as needed This improves the support of POSIX profile. --- diff --git a/codegen/valaccodebasemodule.vala b/codegen/valaccodebasemodule.vala index a0b4b0575..acadf940e 100644 --- a/codegen/valaccodebasemodule.vala +++ b/codegen/valaccodebasemodule.vala @@ -1486,6 +1486,12 @@ public abstract class Vala.CCodeBaseModule : CodeGenerator { var deleg_type = (DelegateType) type; var d = deleg_type.delegate_symbol; generate_delegate_declaration (d, decl_space); + if (d.has_target) { + generate_type_declaration (delegate_target_type, decl_space); + if (deleg_type.is_disposable ()) { + generate_type_declaration (delegate_target_destroy_type, decl_space); + } + } } else if (type.data_type is Enum) { var en = (Enum) type.data_type; generate_enum_declaration (en, decl_space);