logo       

SBCL build, MAKE-LOAD-FORM, buglets: msg#00060

lisp.clisp.general

Subject: SBCL build, MAKE-LOAD-FORM, buglets

Hi,

Firstly, let me just thank you for being able to announce another
milestone in the ability of clisp to act as host Lisp for SBCL's
build. Compilation of the 289 files now proceeds to completion,
before the linking ("genesis") phase dies shortly after startup with
an error that I don't yet understand.

To get this far, I had to turn off complex uses of the pretty printer,
I'm afraid; it's all too easy to trigger assertion errors or crash the
system (and I haven't yet had any luck in distilling this to a small
test case, more's the pity). Apart from fixing some portability
issues in sbcl's code base, there was one other major problem that I
think is an issue in CLISP; I've worked around it for now, but you
should know about it.

At the toplevel, do
(defstruct foo a)
(defmethod make-load-form ((x foo) &optional env)
(make-load-form-saving-slots x :environment env))
and put in a file, say foo.lisp:
(defvar *foo* '#S(FOO :A BAR))

Compile and load the file, and observe that *FOO* is correctly
initialized to a FOO structure whose A slot contains the symbol BAR.
So far, so good. Now, again at the toplevel, continuing the session,
do:
(makunbound '*foo*)
(defconstant bar 1)
and recompile and reload foo.lisp. Now I observe that *FOO* is bound
to #S(FOO :A 1) and not to #S(FOO :A BAR), which I believe is
incorrect behaviour.

Cheers,

Christophe
--
http://www-jcsu.jesus.cam.ac.uk/~csr21/ +44 1223 510 299/+44 7729 383 757
(set-pprint-dispatch 'number (lambda (s o) (declare (special b)) (format s b)))
(defvar b "~&Just another Lisp hacker~%") (pprint #36rJesusCollegeCambridge)


-------------------------------------------------------
This SF.net email is sponsored by: Etnus, makers of TotalView, The debugger
for complex code. Debugging C/C++ programs can leave you feeling lost and
disoriented. TotalView can help you find your way. Available on major UNIX
and Linux platforms. Try it free. www.etnus.com


<Prev in Thread] Current Thread [Next in Thread>
Google Custom Search

News | FAQ | advertise