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

[no subject]



    Date: 3 APR 1981 1610-EST
    From: JONL (Jon L White)
    To:   GJC
    cc:   (BUG LISP)

    Re:
        Date: 9 March 1981 00:54-EST
        From: George J. Carrette <GJC at MIT-MC>
        '(THIS IS THE UNFASL FOR ((DSK GJC) RELAX /5)) 
        (COMMENT **ERROR**  (BVAL . 20.) Lost datum - ILOCMODE in function SET_RECTANGLE)
        ;%%%%%%%% COMPILER ERROR - CALL JONL %%%%%%%% 
    I never herad back from you, but does this didn't happen for me when
    I compiled that file.  What's up?


The error was that a FIXNUM declaration was given for a variable F,
that was then used as (FUNCALL F X). This came up when
the code was generalized from taking a mere number as input to
taking a function. In order to reproduce this, construct a function
along the lines of
(defun foo (a b c d e f g)(declare (fixnum a b c d e f g))
      (funcall a (+ a b c d e f g)))

It took me a couple minutes to realize this as problem of
a general nature in COMPLR which I have been familiar with
for some time and which I gather is "impractical" to fix.

In short, there isn't a whole lot of consistency checking
in the manipulation of declaration information.

I've just about given up hope on winning with respect to this
kind of thing, as even the great lisp-machine doesn't know
the difference between a DEFUN and a DEFVAR, and I'm told by
the respected experts that it is a type of a problem for which
there is not enough resources to solve.