Summary
coops: anonymous classes can't be used as metaclasses
Metadata
- Id: f60706d8168439c3f1eb7653652dfccd41cad742
- Trac id: 460
- Type: defect
- Reporter: syn
- Owner: felix
- Cc:
- Status: closed
- Component: extensions
- Estimated difficulty:
- Resolution: invalid
- Priority: minor
- Milestone: 4.9.0
- Version: 4.6.x
- Changetime: 2012-09-24 21:47:48 UTC
- Created: 2010-12-18 22:55:27 UTC
- Keywords: coops anonymous metaclasses
Description
This program reproduces the issue:
(use coops)
(define-class <foo> ()
()
metaclass: (make-class (<standard-class>)
((bar 1))))
(print (slot-value <foo> 'bar))
It results in this error:
Error: (slot-value) slot not found bar #<coops standard-class `<foo>'>
Changes and comments
[2010-12-22 11:30:45 UTC] felix changed status from new to closed
[2010-12-22 11:30:45 UTC] felix set resolution to invalid
[2010-12-22 11:30:45 UTC] felix wrote:
Try
[2010-12-22 15:08:05 UTC] syn wrote:
That does work indeed. I know understand that make-class does not accept initforms at all. Shouldn't my make-class call above fail then as I give a list rather than just a symbol? Thanks for looking into it!
[2011-06-01 09:00:41 UTC] felix changed milestone from 4.7.0 to 4.8.0
[2011-06-01 09:00:41 UTC] felix wrote:
Milestone 4.7.0 deleted
[2012-09-24 21:47:48 UTC] felix changed milestone from 4.8.0 to 4.9.0
[2012-09-24 21:47:48 UTC] felix wrote:
Milestone 4.8.0 deleted