[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fixing our problems with setf
Date: 13 Oct 87 18:18 PDT
From: Danny Bobrow <Bobrow.pa>
Do (1) and (4) together imply that if there is a macro definition for
foo, and there is an flet foo, but no (setf foo) defined, that the
expansion of
(setf (foo ...)...)
uses (funcall #'(setf foo) ...) rather than the macro. This seems wrong
(inconsistent with CLtL ???).
Isn't it the case that lexical functions cannot have a SETF method in
CLtL? I believe that in the following code:
(defsetf foo set-foo)
(flet ((foo (x) ...))
(setf (foo 7) 8))
the function SET-FOO will not be called. Instead, SETF should signal an
error complaining about how there isn't a SETF method for the lexical
function FOO. The SETF method for the global function FOO is not used.
Am I just hallucinating about this?
Pavel