From: Jürg Billeter Date: Thu, 2 Apr 2009 18:37:23 +0000 (+0200) Subject: Error domain declaration fixes X-Git-Tag: 0.7.0~10 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c32cc313ba708295df18e5caa5006795c22d2be3;p=thirdparty%2Fvala.git Error domain declaration fixes --- diff --git a/gobject/valagerrormodule.vala b/gobject/valagerrormodule.vala index 5d1201c7a..7869130a5 100644 --- a/gobject/valagerrormodule.vala +++ b/gobject/valagerrormodule.vala @@ -66,6 +66,11 @@ internal class Vala.GErrorModule : CCodeDelegateModule { public override void visit_error_domain (ErrorDomain edomain) { generate_error_domain_declaration (edomain, source_declarations); + if (!edomain.is_internal_symbol ()) { + generate_error_domain_declaration (edomain, header_declarations); + } + generate_error_domain_declaration (edomain, internal_header_declarations); + string quark_fun_name = edomain.get_lower_case_cprefix () + "quark"; var cquark_fun = new CCodeFunction (quark_fun_name, gquark_type.data_type.get_cname ()); @@ -300,6 +305,11 @@ internal class Vala.GErrorModule : CCodeDelegateModule { current_method_inner_error = true; + var error_type = (ErrorType) clause.error_type; + if (error_type.error_domain != null) { + generate_error_domain_declaration (error_type.error_domain, source_declarations); + } + clause.accept_children (codegen); var cfrag = new CCodeFragment ();