gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gcl-devel] Re: [Maxima] Bugs in gcl cause maxima build failures


From: Raymond Toy
Subject: [Gcl-devel] Re: [Maxima] Bugs in gcl cause maxima build failures
Date: 02 May 2002 09:49:00 -0400
User-agent: Gnus/5.0808 (Gnus v5.8.8) XEmacs/21.5 (bok choi)

>>>>> "James" == James Amundson <address@hidden> writes:

    James> Bug #1:

    James> GCL bails out with an error when trying to compile f2cl-lib.lisp in 
the
    James> src/numerical directory. The simplest way to see the bug is simply to
    James> run gcl and type
    James>      (compile-file "f2cl-lib.lisp")

    James> Here is what happens:

    James> ---------------------------------------
    >> (compile-file "f2cl-lib.lisp")

    James> Compiling f2cl-lib.lisp.
    James> ; (DEFUN COL-MAJOR-INDEX ...) is being compiled.
    James> ;; The variable HI is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ;; The variable LO is undefined.
    James> ;; The compiler will assume this variable is a global.

Could these errors be caused by a non-functional destructuring-bind?
HI and LO are defined there and are used.

Perhaps the numerical stuff in maxima.system should be moved later,
after ellipt.lisp is loaded, which contains destructuring-bind for
gcl?

Alternatively, perhaps we should remove destructuring-bind from
ellipt.lisp, stuff it in, say, gcl-hacks.lisp, update/conditionalize
maxima.system appropriately, and load gcl-hacks early.  Maybe include
an ANSI loop function as well in gcl-hacks?  I think I have one.

    James> ; (DEFUN IFIX ...) is being compiled.
    James> ;; Warning: INT (in lisp package) is called as a function--not yet
    James> defined
    James> ; (DEFUN IDFIX ...) is being compiled.
    James> ;; Warning: INT (in lisp package) is called as a function--not yet
    James> defined
    James> ; (DEFUN MAX1 ...) is being compiled.
    James> ;; Warning: INT (in lisp package) is called as a function--not yet
    James> defined

This looks wrong since INT is defined before these functions.

    James> Warning: The declaration specifier INTEGER4 is unknown.

This seems wrong.  gcl doesn't understand deftype's maybe?

    James> ; (DEFUN PROCESS-IMPLIED-DO ...) is being compiled.
    James> ;; The variable START is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ;; The variable END is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ;; The variable &OPTIONAL is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ;; The variable STEP is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ;; The variable INDEX-VAR is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ;; The variable DATA-VARS is undefined.
    James> ;; The compiler will assume this variable is a global.

Broken destructuring-bind?

    James> ; (DEFUN EXECUTE-FORMAT ...) is being compiled.
    James> ;; The variable WHILE is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ;; The variable DO is undefined.
    James> ;; The compiler will assume this variable is a global.

Missing ANSI loop?

    James> ; (DEFUN D1MACH ...) is being compiled.
    James> ;; The variable LEAST-POSITIVE-NORMALIZED-DOUBLE-FLOAT is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> ; (DEFUN R1MACH ...) is being compiled.
    James> ;; The variable LEAST-POSITIVE-NORMALIZED-SINGLE-FLOAT is undefined.
    James> ;; The compiler will assume this variable is a global.
    James> End of Pass 1.  

I guess gcl is missing these.  Could use
least-positive-{double,single}-float for these.

    James> ; (DEFUN LUN->STREAM ...) is being compiled.
    James> ;; Warning:  LUN->STREAM is proclaimed but not in *inline-functions* 

No idea what this means.  Maybe the declaim for lun->stream can be
removed?  Not sure why that's there anymore.

Ray



reply via email to

[Prev in Thread] Current Thread [Next in Thread]