projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
0.8.6.30:
[sbcl.git]
/
src
/
code
/
early-setf.lisp
diff --git
a/src/code/early-setf.lisp
b/src/code/early-setf.lisp
index
b09d1f0
..
e4f43ed
100644
(file)
--- a/
src/code/early-setf.lisp
+++ b/
src/code/early-setf.lisp
@@
-91,7
+91,8
@@
GET-SETF-EXPANSION directly."
;;; If a macro, expand one level and try again. If not, go for the
;;; SETF function.
;;; If a macro, expand one level and try again. If not, go for the
;;; SETF function.
-(declaim (ftype (function (t sb!c::lexenv)) expand-or-get-setf-inverse))
+(declaim (ftype (function (t (or null sb!c::lexenv)))
+ expand-or-get-setf-inverse))
(defun expand-or-get-setf-inverse (form environment)
(multiple-value-bind (expansion expanded)
(sb!xc:macroexpand-1 form environment)
(defun expand-or-get-setf-inverse (form environment)
(multiple-value-bind (expansion expanded)
(sb!xc:macroexpand-1 form environment)
@@
-372,8
+373,7
@@
GET-SETF-EXPANSION directly."
(%defsetf ,access-form-var ,(length store-variables)
(lambda (,arglist-var)
,@local-decs
(%defsetf ,access-form-var ,(length store-variables)
(lambda (,arglist-var)
,@local-decs
- (block ,access-fn
- ,body))))
+ ,body)))
nil
',doc))))))
(t
nil
',doc))))))
(t
@@
-414,8
+414,7
@@
GET-SETF-EXPANSION directly."
(unless (symbolp access-fn)
(error "DEFINE-SETF-EXPANDER access-function name ~S is not a symbol."
access-fn))
(unless (symbolp access-fn)
(error "DEFINE-SETF-EXPANDER access-function name ~S is not a symbol."
access-fn))
- (let ((whole (gensym "WHOLE-"))
- (environment (gensym "ENV-")))
+ (with-unique-names (whole environment)
(multiple-value-bind (body local-decs doc)
(parse-defmacro lambda-list whole body access-fn
'sb!xc:define-setf-expander
(multiple-value-bind (body local-decs doc)
(parse-defmacro lambda-list whole body access-fn
'sb!xc:define-setf-expander
@@
-424,7
+423,7
@@
GET-SETF-EXPANSION directly."
(assign-setf-macro ',access-fn
(lambda (,whole ,environment)
,@local-decs
(assign-setf-macro ',access-fn
(lambda (,whole ,environment)
,@local-decs
- (block ,access-fn ,body))
+ ,body)
nil
',doc)))))
nil
',doc)))))