From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:44050) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sel2X-0000DX-Mg for qemu-devel@nongnu.org; Wed, 13 Jun 2012 06:43:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Sel2U-0006Fu-N8 for qemu-devel@nongnu.org; Wed, 13 Jun 2012 06:43:05 -0400 Received: from mx1.redhat.com ([209.132.183.28]:36712) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Sel2U-0006Fl-FG for qemu-devel@nongnu.org; Wed, 13 Jun 2012 06:43:02 -0400 Message-ID: <4FD86EAA.1060005@redhat.com> Date: Wed, 13 Jun 2012 12:42:50 +0200 From: Paolo Bonzini MIME-Version: 1.0 References: <76ad34dd30a83d96a97bc7443245ee9c165e053f.1339578989.git.peter.crosthwaite@petalogix.com> <4FD8658C.700@redhat.com> <4FD86B35.90000@suse.de> In-Reply-To: <4FD86B35.90000@suse.de> Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: quoted-printable Subject: Re: [Qemu-devel] [RFC v0 5/8] object: make interfaces concrete List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: =?ISO-8859-15?Q?Andreas_F=E4rber?= Cc: peter.maydell@linaro.org, aliguori@us.ibm.com, qemu-devel@nongnu.org, "Peter A. G. Crosthwaite" , paul@codesourcery.com, edgar.iglesias@gmail.com, john.williams@petalogix.com, avi@redhat.com Il 13/06/2012 12:28, Andreas F=E4rber ha scritto: > I am pretty certain that object_new() is NOT called recursively! It is for interfaces: object_new ->object_new_with_type ->object_initialize_with_type ->object_init_with_type ->object_interface_init and then: static void object_interface_init(Object *obj, InterfaceImpl *iface) { TypeImpl *ti =3D iface->type; Interface *iface_obj; assert(!object_is_interface(obj)); iface_obj =3D INTERFACE(object_new(ti->name)); iface_obj->iface_obj =3D obj; iface_obj->iface_parent.interfaces =3D INTERFACE_MAGIC; obj->interfaces =3D g_slist_prepend(obj->interfaces, iface_obj); } Paolo