[armedbear-devel] couple of difficult to debug clos situations

Alan Ruttenberg alanruttenberg at gmail.com
Wed Jan 5 05:26:05 UTC 2011


(defclass a (b))
(make-instance 'a)
; Evaluation aborted on NIL.
;; no backtrace in slime
The problem is that b is not defined, but the error makes this
difficult to discern.

---

Trying to fix the problem in some ways leads to more:

(defclass a1 (b1))
(defclass b2 ())
CL-USER> (make-instance 'a1)
; Evaluation aborted on NIL.
;; no backtrace in slime
CL-USER> (defclass a1 (b2))
; Evaluation aborted on NIL.
;; no backtrace in slime
---

(defclass a3 (b3))
(mop::class-prototype (find-class 'a3))
;; here we get a backtrace:
#<STANDARD-CLASS A3 {1E8E471}> is not finalized.

However it is hard to figure out what the problem is.

Now try to fix it:

(defclass b3 ())
(mop::class-prototype (find-class 'a3))
;; still get "is not finalized" error
(make-instance 'a3)
;; succeeds
(mop::class-prototype (find-class 'a3))
;; now it succeeds

-Alan




More information about the armedbear-devel mailing list