;; FIXME: warn about incompatible lambda list with
;; respect to parent function?
(setf (sb!xc:compiler-macro-function name) definition)
- (setf (fdocumentation name 'compiler-macro) doc)
,(when set-p
- `(setf (%fun-lambda-list definition) lambda-list
+ `(setf (%fun-doc definition) doc
+ (%fun-lambda-list definition) lambda-list
(%fun-name definition) debug-name))
name))))
(progn
(cond
,@(nreverse clauses)
,@(if errorp
- `((t (error 'case-failure
- :name ',name
- :datum ,keyform-value
- :expected-type ',expected-type
- :possibilities ',keys))))))))
+ `((t (case-failure ',name ,keyform-value ',keys))))))))
) ; EVAL-WHEN
(defmacro-mundanely case (keyform &body cases)