Hi,

Perhaps this is a bug with the compiler:

When I compile the following:

(defun tryme (index)
  (labels ((fail ()
             (return-from tryme nil))
           (vi7 (index)
             (when (< index 8) (vi7 (1+ index))))
           (v3 () (fail))
           (v1 (index)
             (if (< index 3)
               (vi7 (1+ index))
               (v3)))
           (v26 (index) 
             (v3)))
    (declare (inline fail v3 v1 v26))
    (v1 index))))

I get the error below. When I remove the unused definition of v26 (and remove 
it from the inline declaration) it compiles OK. (My problem is that in 
general I can't easily remove the unused code, it is generated). 

The error:

Python version 1.0, VM version Intel x86 on 12 AUG 02 01:48:09 pm.
Compiling: /home/pdenno/junk6.lisp 12 AUG 02 01:48:08 pm

Converted TRYME.

File: /home/pdenno/junk6.lisp

In: DEFUN TRYME
  (LABELS ((FAIL #
             #)
           (VI7 #
             #)
           (V3 # ..)))
Note: Deleting unused function
  V26

Compiling DEFUN TRYME: 


Error in function COMMON-LISP::ASSERT-ERROR:
   The assertion (EQ C::CALLED C::FUN) failed.

I get these errors with both a CVS head version of cmucl 18d and the 
distributed 18d running on linux.

CMU Common Lisp CMUCL files of Aug 7 11:22 2002 -0400 HEAD, built Thu Aug 8 
18:42:12 EDT 2002, running on bordercollie
Send questions to [EMAIL PROTECTED] and bug reports to [EMAIL PROTECTED]

-- 
Best Regards, 
- Peter 

Peter Denno 
National Institute of Standards and Technology, 
Manufacturing System Integration Division, 
100 Bureau Drive, Mail Stop 8260             Tel: +1 301-975-3595 
Gaithersburg, MD, USA 20899-8260          FAX: +1 301-975-4694

Reply via email to