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

KCL CALL-NEXT-METHOD bug



KCL currently does not handle &ENVIRONMENT parameters correctly. For
example, the following test

(defmacro test (&environment e)
 (format T "~S~%" e)
)

(let
  ( (a 3) )
  (flet ( (b (x) a) )
    (test)
  )
)
causes NIL to be printed, even the lexical environment passed to
the macro is considerably richer (e.g., both lexical variables
and a lexically defined function). This also is true of MACROLET.

Anyway, this causes the loading sequence for high.l to break
as soon as it tries to expand CALL-NEXT-METHOD, since the expansion
for CALL-NEXT-METHOD is heavily dependent on the lexically defined
macro defined during method generation.

While I think this is a problem with KCL (and *not* PCL), are there
any quick, short term workarounds suggested? 

		Jim Kempf	kempf@hplabs.hp.com

PS: The backtrace during loading of high.l is:

DEFINE-BUILT-IN-CLASS
NDEFSTRUCT
EXPAND-DEFSTRUCT
PARSE-DEFSTRUCT-OPTIONS
CALL-NEXT-METHOD