From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: David Pirotte Newsgroups: gmane.lisp.guile.devel Subject: Re: goops - guile-clutter unexpected bug while using #:virtual slot allocation for a subclass Date: Sat, 20 Dec 2014 04:16:57 -0200 Message-ID: <20141220041657.5a4d7325@capac> References: <20141219174633.6efb845e@capac> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; boundary="Sig_/OI/PI0exIeBSNL0QyGrBX.F"; protocol="application/pgp-signature" X-Trace: ger.gmane.org 1419056256 24753 80.91.229.3 (20 Dec 2014 06:17:36 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sat, 20 Dec 2014 06:17:36 +0000 (UTC) Cc: guile-devel To: Panicz Maciej Godek Original-X-From: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Sat Dec 20 07:17:28 2014 Return-path: Envelope-to: guile-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1Y2DLx-0004tX-Ka for guile-devel@m.gmane.org; Sat, 20 Dec 2014 07:17:25 +0100 Original-Received: from localhost ([::1]:33518 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y2DLw-0000Fb-Hu for guile-devel@m.gmane.org; Sat, 20 Dec 2014 01:17:24 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:52065) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y2DLn-0000FN-DW for guile-devel@gnu.org; Sat, 20 Dec 2014 01:17:22 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Y2DLf-0002di-TL for guile-devel@gnu.org; Sat, 20 Dec 2014 01:17:15 -0500 Original-Received: from maximusconfessor.all2all.org ([79.99.200.102]:45889) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Y2DLf-0002de-NI for guile-devel@gnu.org; Sat, 20 Dec 2014 01:17:07 -0500 Original-Received: from localhost (unknown [192.168.0.2]) by maximusconfessor.all2all.org (Postfix) with ESMTP id 1BAB4A04C1F3; Sat, 20 Dec 2014 07:17:07 +0100 (CET) Original-Received: from maximusconfessor.all2all.org ([192.168.0.1]) by localhost (maximusconfessor.all2all.org [192.168.0.2]) (amavisd-new, port 10024) with ESMTP id E-FggEffj-fV; Sat, 20 Dec 2014 06:53:46 +0100 (CET) Original-Received: from capac (unknown [179.210.42.100]) by maximusconfessor.all2all.org (Postfix) with ESMTPSA id 194ACA04C4B2; Sat, 20 Dec 2014 07:16:59 +0100 (CET) In-Reply-To: X-Mailer: Claws Mail 3.11.1 (GTK+ 2.24.25; x86_64-pc-linux-gnu) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 79.99.200.102 X-BeenThere: guile-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Developers list for Guile, the GNU extensibility library" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Original-Sender: guile-devel-bounces+guile-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.lisp.guile.devel:17625 Archived-At: --Sig_/OI/PI0exIeBSNL0QyGrBX.F Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: quoted-printable Hi Panicz, I don't think you did read the paste (3 parts) carefully, since the first p= art of the paste is a goops example [no guile-gnome[clutter] code] that does work,= as expected. > My first impression is that the error might be caused by using the > combination of #:allocation #:virtual and #:init-keyword for the "colour" > slot. Your impression is wrong, please try the code from the 1st part of the past= e. > Since #:init-keyword initializes slot value with a given value, and > virtual slots have no actual value, the semantics of such operation is > rather unclear. This is also wrong and there is nothing unclear here: when one uses the #:v= irtual allocation option, one must also provide both #:slot-ref #:slot-set! option= s to specify how to read and write values for this slot [see the manual]. so, no= possible ambiguity, if one also uses #:init-keyword, the system must call, at the ri= ght initialization time, the provided code for the #:slot-set! option, which is= what goops does perfectly. The problem is with/in guile-gnome, which for some reason I am unable clear= ly identify and debug by myself, breaks goops. > If your intention is to use the keyword as an argument to the constructor, > you should rather provide a custom "initialize" method (and drop the > "init-keyword" for the colour slot): I don't agree, one should not have to provide any additional code, this a guile-gnome related bug. Happy hacking, David --Sig_/OI/PI0exIeBSNL0QyGrBX.F Content-Type: application/pgp-signature Content-Description: OpenPGP digital signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBAgAGBQJUlRRZAAoJEPN0/ZOjBXrXyJkH/3gMCtEdnYcLzpcfZZ2hpsH1 Jc1IS6YlwZBr6dC+WNqysVPSm/ucWpMNo4p86qS7+gfUdFVP6HoA/b42i9FMbs+P iH4RRdWaslAnwovDqTJgEJEuX4GF/Akh3pzqv+3EOXHQEd5XIgRs/EMO2FhncYnc Us/BuRY6TE1K2lUamR6v+wVY5m65FSMQQqpqts+oD73QcvBMNmtKy2fQynaEixDE MT5QFnqwBxBgGklXxYwFvJXwJjz0NPRVmFFgxXIh/JqLrA0TP4AN2E1pxJyBGGcs wmH6YkE77HdZcLufk0AiUDhxGWZRGWeVEzsMSHXjTqq/p3GAHMPnlVhrPnAQFsE= =X3/l -----END PGP SIGNATURE----- --Sig_/OI/PI0exIeBSNL0QyGrBX.F--