|
From: <ti...@te...> - 2004-05-06 11:26:22
|
I'm running SBCL 0.8.10.11 on x86 linux. When I load a fasl that
redefines a struct incompatibly, and choose the CONTINUE restart, sbcl
signals an SB-INT:BUG condition. The function below duplicates the
problem.
(defun stimulate-sbcl ()
(let ((filename (format nil "/tmp/~A.lisp" (gensym))))
;;create a file which redefines a structure incompatibly
(with-open-file (f filename :direction :output :if-exists :supersede)
(print '(defstruct astruct foo) f)
(print '(defstruct astruct foo bar) f))
;;compile and load the file, then invoke the continue restart on
;;the structure redefinition error
(handler-bind ((error (lambda (c) (continue c))))
(load (compile-file filename)))))
(stimulate-sbcl)
...
; compilation finished in 0:00:01
WARNING: change in instance length of class ASTRUCT:
current length: 2
new length: 3
debugger invoked on a SB-INT:BUG in thread 27726:
fasl stack not empty when it should be
This isn't actually causing me any trouble. Just figured the test
case might be handy.
--
-Tim
|