(in-package "SB!IMPL")
-(file-comment
- "$Header$")
-
;;; The inverse for a generalized-variable reference function is stored in
;;; one of two ways:
;;;
((eq arg '&rest)
(if (symbolp (cadr ll))
(setq rest-arg (cadr ll))
- (error "Non-symbol &REST arg in definition of ~S." name))
+ (error "Non-symbol &REST argument in definition of ~S." name))
(if (null (cddr ll))
(return nil)
- (error "Illegal stuff after &REST arg.")))
+ (error "Illegal stuff after &REST argument.")))
((memq arg '(&key &allow-other-keys &aux))
(error "~S not allowed in DEFINE-MODIFY-MACRO lambda list." arg))
((symbolp arg)
(error "SETF of APPLY is only defined for function args like #'SYMBOL."))
(let ((function (second functionoid))
(new-var (gensym))
- (vars (mapcar #'(lambda (x)
- (declare (ignore x))
- (gensym))
- args)))
+ (vars (make-gensym-list (length args))))
(values vars args (list new-var)
`(apply #'(setf ,function) ,new-var ,@vars)
`(apply #',function ,@vars))))