I have a module which loads under CMUCL 18d/x86 Linux, compiles/loads under
CLISP but fails to compile under CMUCL.  By #+'ing out code I discovered
that the problem is related to a recursive tail call inside a labels form.
Is this a known problem?  Is there a compiler option I can change to
workaround this?  I can re-code this particular lambda as a do loop, but I
use tail recursive labels all over the place.  Just curious.

        Thanks!

        Dave

The output is below:

Script started on Sun Oct 13 21:24:08 2002
[?6c% lisp CMU Common Lisp 18d, running on mud.synergy.org
Send questions to [EMAIL PROTECTED] and bug reports to
[EMAIL PROTECTED]
Loaded subsystems:
    Python 1.0, target Intel x86
    CLOS based on PCL version:  September 16 92 PCL (f)
* (compile-file "match")

Python version 1.0, VM version Intel x86 on 13 OCT 02 09:24:18 pm.
Compiling: /home/dave/CyberMage/match.lisp 13 OCT 02 09:22:45 pm

Compiling DEFCONSTANT *MATCH-OBJECTS-HASH-TABLE*:
Byte Compiling Top-Level Form:
Converted MATCH-OBJECTS.
Compiling DEFUN MATCH-OBJECTS:
Type-error in KERNEL::OBJECT-NOT-TYPE-ERROR-HANDLER:
   NIL is not of type C::TAIL-SET

Restarts:
  0: [ABORT] Return to Top-Level.

Debug  (type H for help)

(C::MERGE-TAIL-SETS
 #<C::COMBINATION #x4807638D
     FUN= #<C::REF #x4807635D  LEAF= #<LAMBDA 4809DCF5>>
     ARGS= (#<C::REF 48076405> #<C::REF 4807647D>)>
 #<LAMBDA #x4809DCF5
     NAME= NIL
     TYPE= #<BUILT-IN-CLASS FUNCTION (read-only) {2803C6ED}>
     WHERE-FROM= :DEFINED
     VARS= #'#:FUNCALL-ARG-59>)
Source: Error finding source:
Error in function DEBUG::GET-FILE-TOP-LEVEL-FORM:  Source file no longer
exists:
  target:compiler/locall.lisp.
0] (quit)


Compilation unit aborted.

Compilation aborted after 0:00:04.
% ^D
Script done on Sun Oct 13 21:24:23 2002



  • Re: Dave Richards
    • Re: Helmut Eller

Reply via email to