GNU bug report logs - #25211
GOOPS #:class alocation broken in Guile 2.2

Previous Next

Package: guile;

Reported by: Christopher Allan Webber <cwebber <at> dustycloud.org>

Date: Thu, 15 Dec 2016 19:41:02 UTC

Severity: normal

Done: Andy Wingo <wingo <at> pobox.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Christopher Allan Webber <cwebber <at> dustycloud.org>
Subject: bug#25211: closed (Re: bug#25211: GOOPS #:class alocation broken
 in Guile 2.2)
Date: Wed, 01 Mar 2017 14:39:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#25211: GOOPS #:class alocation broken in Guile 2.2

which was filed against the guile package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 25211 <at> debbugs.gnu.org.

-- 
25211: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=25211
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Andy Wingo <wingo <at> pobox.com>
To: Christopher Allan Webber <cwebber <at> dustycloud.org>
Cc: 25211-done <at> debbugs.gnu.org
Subject: Re: bug#25211: GOOPS #:class alocation broken in Guile 2.2
Date: Wed, 01 Mar 2017 15:38:52 +0100
On Thu 15 Dec 2016 20:39, Christopher Allan Webber <cwebber <at> dustycloud.org> writes:

> In Guile 2.2:
>
> (define-class <foo> ()
>   (bar #:allocation #:class
>        #:init-value 'baz))
>
> (slot-definition-allocation (class-slot-definition <foo> 'bar))
>   => #:instance

Fixed.  Thanks for the report!

Andy

[Message part 3 (message/rfc822, inline)]
From: Christopher Allan Webber <cwebber <at> dustycloud.org>
To: bug-guile <at> gnu.org
Subject: GOOPS #:class alocation broken in Guile 2.2
Date: Thu, 15 Dec 2016 13:39:47 -0600
In Guile 2.2:

(define-class <foo> ()
  (bar #:allocation #:class
       #:init-value 'baz))

(slot-definition-allocation (class-slot-definition <foo> 'bar))
  => #:instance

In Guile 2.0 this properly returns #:class.

Also, curiously, Guile 2.2 breaks if you present the keywords in the
wrong order:

(define-class <foo> ()
  (bar #:allocation #:class
       #:init-value 'baz))

oop/goops.scm:352:0: In procedure class-precedence-list:
oop/goops.scm:352:0: In procedure struct_vtable: Wrong type argument in position 1 (expecting struct): #:init-value

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
scheme@(#{8sync}# systems actors) [1]> ,bt
In current input:
   1205:0  4 (_)
In oop/goops.scm:
   2978:4  3 (_ _ . _)
   811:17  2 (%prep-layout! #<<class> <foo> 30b1b40>)
   767:19  1 (%compute-layout _ 0 #f)
    352:0  0 (class-precedence-list _)

I'm guessing that's related!



This bug report was last modified 8 years and 139 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.