[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Chicken-users] ObjC egg with Chicken 2.3 (define-record setters)
From: |
Arto Bendiken |
Subject: |
[Chicken-users] ObjC egg with Chicken 2.3 (define-record setters) |
Date: |
Sun, 19 Feb 2006 19:27:49 +0100 |
Hi,
I ran into a small glitch trying to use the objc egg with the brand
new Chicken 2.3 (though this also applies to 2.216):
#;1> (use objc cocoa)
...
; loading /opt/local/lib/chicken/cocoa.so ...
Error: (setter) no setter defined: #<procedure (objc:class-objc? x29)>
I tracked this down to post-2.207 changes in chicken-more-macros.scm.
Specifically, in 2.216 and 2.3 it's necessary to register the feature
'record-setters in order for the `define-record' macro to generate the
same kind of code as in older versions.
Doing a "(eval-when (compile) (register-feature! 'record-setters))" in
the objc egg solved the problem and allows it to be loaded in 2.3. I
won't contribute a patch as such since I took the quick and dirty
approach and just added this before each and every `define-record'...
perhaps someone else knows where it should be best strategically
placed ;-)
--
Arto Bendiken
http://bendiken.net/
- [Chicken-users] ObjC egg with Chicken 2.3 (define-record setters),
Arto Bendiken <=