From: Sean R. <sd...@jh...> - 2003-11-27 08:08:29
|
Hi all, I've been messing around with get-setf-expansion and run into problems when using it in sbcl 0.8 and 0.8.6.1. My understanding was that if no environment was given then the null lexical environment was to be used, or is there yet another outside case that I've missed. eg. * (lisp-implementation-version) "0.8.6.1" * (defstruct foo (x)) FOO * (get-setf-expansion '(foo-x foo)) debugger invoked on condition of type TYPE-ERROR in thread 4631: The value NIL is not of type SB-KERNEL:LEXENV. restarts (invokable by number or by possibly-abbreviated name): 0: [ABORT ] Reduce debugger level (leaving debugger, returning to toplevel). 1: [TOPLEVEL] Restart at toplevel READ/EVAL/PRINT loop. (SB-IMPL::EXPAND-OR-GET-SETF-INVERSE 2 (FOO-X FOO) NIL)[:EXTERNAL] 0] Regards, Sean. -- The pen is mightier than the sword. Only if the sword is very short and the pen is very sharp. Terry Pratchett. |
From: Nikodemus S. <nik...@ra...> - 2003-11-27 13:29:13
|
On Thu, Nov 27, 2003 at 10:12:38AM +0200, Sean Ross wrote: > debugger invoked on condition of type TYPE-ERROR in thread 4631: > The value NIL is not of type SB-KERNEL:LEXENV. Your understanding is correct: it's a bug in SBCL. A patch can be found here: http://sourceforge.net/mailarchive/forum.php?thread_id=3539315&forum_id=4134 Cheers, -- Nikodemus |