From: Jürg Billeter Date: Mon, 15 Dec 2008 23:09:34 +0000 (+0000) Subject: Report error when using construct blocks in non-GObject classes X-Git-Tag: VALA_0_5_3~25 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=bc0a0b7f0df8df035edd63e9e60b156692d285cc;p=thirdparty%2Fvala.git Report error when using construct blocks in non-GObject classes 2008-12-16 Jürg Billeter * gobject/valagobjectmodule.vala: Report error when using construct blocks in non-GObject classes svn path=/trunk/; revision=2169 --- diff --git a/ChangeLog b/ChangeLog index 63d564db5..326b60033 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2008-12-16 Jürg Billeter + + * gobject/valagobjectmodule.vala: + + Report error when using construct blocks in non-GObject classes + 2008-12-15 Jürg Billeter * vapi/packages/gtk+-2.0/: diff --git a/gobject/valagobjectmodule.vala b/gobject/valagobjectmodule.vala index d636dcb16..8b8432b5f 100644 --- a/gobject/valagobjectmodule.vala +++ b/gobject/valagobjectmodule.vala @@ -1523,6 +1523,12 @@ public class Vala.GObjectModule : GTypeModule { var cl = (Class) c.parent_symbol; if (c.binding == MemberBinding.INSTANCE) { + if (!cl.is_subtype_of (gobject_type)) { + Report.error (c.source_reference, "construct blocks require GLib.Object"); + c.error = true; + return; + } + function = new CCodeFunction ("%s_constructor".printf (cl.get_lower_case_cname (null)), "GObject *"); function.modifiers = CCodeModifiers.STATIC;