[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Lucid Walker can't walk labels
- To: commonloops.pa@Xerox.COM
- Subject: Lucid Walker can't walk labels
- From: Timothy.Freeman@theory.cs.cmu.edu
- Date: Fri, 15 May 87 01:18:16 EDT
The version of PCL dated "4/29/87 prime April 29, 1987" can't walk
labels forms in Lucid lisp. Here is my test file that illustrates
this:
(in-package :user)
(use-package :pcl)
(defclass tree () ()
(:accessor-prefix nil))
(defmethod baz ((self tree))
(with-slots (self)
(labels ((rec-print-tree (node) 4)))))
and here's what happens:
> (compile-file "~/test/foo.lisp" :messages nil)
>>Interrupt: segmentation violation
MACROEXPAND-1:
Required arg 0 (FORM): (LABELS ((REC-PRINT-TREE # 4))
(WALKER::MAKE-LEXICAL-ENVIRONMENT-2))
Optional arg 1 (ENV): -37339120
:A Abort to Lisp Top Level
-> :n
EVALHOOK:
Required arg 0 (FORM): (LABELS ((REC-PRINT-TREE # 4))
(WALKER::MAKE-LEXICAL-ENVIRONMENT-2))
Required arg 1 (EVALHOOKFN): WALKER::MAKE-LEXICAL-ENVIRONMENT-1
Required arg 2 (APPLYHOOKFN): NIL
Optional arg 3 (ENV): ((#S(LUCID::%VARIABLE NIL SELF NIL NIL NIL NIL
NIL NIL NIL 0 NIL NIL) #S(LUCID::%ANODE NIL LAMBDA NIL NIL NIL NIL NIL
NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL #...)) (NIL
#S(LUCID::%ANODE NIL LAMBDA NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL
NIL NIL NIL NIL NIL NIL #...)) (#S(LUCID::%BLOCK NIL BAZ NIL NIL NIL NIL
NIL NIL NIL NIL NIL NIL NIL NIL NIL NIL)) NIL NIL (#S(LUCID::%DECL NIL
CALL-NEXT-METHOD NIL LUCID::MVAR NIL #) #S(LUCID::%DECL NIL WITH-SLOTS
NIL LUCID::MVAR N
IL #)) NIL LUCID::%ALPHALEX)
-> :n
unnamed function:
Required arg 0 (G1771): 62913901
-> :n
WALKER::WALK-FLET/LABELS:
Required arg 0 (FORM): (LABELS ((REC-PRINT-TREE # 4)))
Required arg 1 (CONTEXT): :EVAL
The rest of the backtrace looks fairly reasonable. Does anyone know
how to fix this?