From: Peeter Pruuden
Subject: Problems with Allegro CL 4.2
Date: 
Message-ID: <Pine.SOL.3.91.960613172613.7001S-100000@pikkuhaikara.cs.tut.fi>
We have an application written in CL. which works fine with AKCL. When 
running it with Allegro CL 4.2, however, I get the following error:

Error: attempt to call `#:get-instance-id' which is an undefined function.
  [condition type: undefined-function]

When I use describe, it tells me the following:
 
[1] user(5): (describe 'vm::get-instance-id)
disco-vm-class:get-instance-id is a symbol
  It is unbound.
  It is external in the disco-vm-class package and accessible in the 
disco-vm package.
  Its function binding is #<Interpreted Function get-instance-id>
    The function takes arguments (instance)
  Its property list has these indicator/value pairs:
excl::%fun-documentation    "Return instance id"

What baffles me is that in the code the function call has an explicit 
package prefix, so I think get-instance-id should be visible. The code is 
below. Does anyone have any ideas for help?

(defun get-value (bindings path st-env-list)
  "Get the value of an instance variable in st-env"
  (let* ((id (first path))
	 (st (find id st-env-list :key #'st-name)))
    (when (null st)
      (throw :rt-error (cons :unknown-id "Variable/state doesn't exist")))
    (let ((v (get-binding-value bindings (st-where st)))
	  (r (rest path)))
      (format t "~&g-v: id = ~A, v = ~A, r = ~A~%" id v r)
      (cond ((null r) v)
	    ((instance-object-p v)
	     (get-instance-value v r))	
	    ((eq v :active)
	     (get-value bindings r (st-sub st)))
	    ((and evaluating-guard (eq v :inactive))
	     :inactive)
	    (t (if r (throw :rt-error
		       (cons :inactive-value
			     (format
			      nil
			      "Attempt to access an inactive state ([~A]~{.~A~})"
			      (vm::get-instance-id *current-object*) path))))
	       :inactive)))))


**************************************************
 Peeter Pruuden     HB 228       +358 31 365 3831
 ยทยทยทยท@cs.tut.fi                  +358 40 556 4699
 http://www.cs.tut.fi/~pets/
**************************************************