From: Luca Bruno Date: Wed, 24 Dec 2014 00:25:09 +0000 (+0100) Subject: codegen: allow "type" property if it's NoAccessorMethod X-Git-Tag: 0.27.1~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=46f7f2c8d40aa6b4e689534a6a65421a38f1105b;p=thirdparty%2Fvala.git codegen: allow "type" property if it's NoAccessorMethod Fixes bug 741862 --- diff --git a/codegen/valagtypemodule.vala b/codegen/valagtypemodule.vala index b25cec4c5..f4d3ea2f8 100644 --- a/codegen/valagtypemodule.vala +++ b/codegen/valagtypemodule.vala @@ -2204,7 +2204,16 @@ public class Vala.GTypeModule : GErrorModule { public override void visit_property (Property prop) { var cl = current_type_symbol as Class; var st = current_type_symbol as Struct; - if (prop.name == "type" && ((cl != null && !cl.is_compact) || (st != null && get_ccode_has_type_id (st)))) { + + var base_prop = prop; + if (prop.base_property != null) { + base_prop = prop.base_property; + } else if (prop.base_interface_property != null) { + base_prop = prop.base_interface_property; + } + + if (base_prop.get_attribute ("NoAccessorMethod") == null && + prop.name == "type" && ((cl != null && !cl.is_compact) || (st != null && get_ccode_has_type_id (st)))) { Report.error (prop.source_reference, "Property 'type' not allowed"); return; }