1.0.30.41: Octets support for ebcdic-us
[sbcl.git] / src / code / defmacro.lisp
index d45a27c..39ec97c 100644 (file)
@@ -43,7 +43,7 @@
                      ;; function, and report spurious warnings about
                      ;; redefinition a macro as a function, and then
                      ;; vice versa.
-                     #-sb-xc-host #-sb-xc-host named-lambda (defmacro ,name)
+                     #-sb-xc-host named-lambda #-sb-xc-host (defmacro ,name)
                      (,whole ,environment)
                       ,@local-decs
                       ,new-body))
                     ;; will involve finding the old macro lambda-list
                     ;; and comparing it with the new one.
                     (style-warn "redefining ~S in DEFMACRO" name))
-            (setf (sb!xc:macro-function name) definition
-                  (fdocumentation name 'function) doc)
+            (setf (sb!xc:macro-function name) definition)
             ,(when set-p
-                   `(case (widetag-of definition)
-                      (#.sb!vm:closure-header-widetag
-                       (setf (%simple-fun-arglist (%closure-fun definition))
-                             lambda-list
-                             (%simple-fun-name (%closure-fun definition))
-                             debug-name))
-                      (#.sb!vm:simple-fun-header-widetag
-                       (setf (%simple-fun-arglist definition) lambda-list
-                             (%simple-fun-name definition) debug-name))))
+                   `(setf (%fun-doc definition) doc
+                          (%fun-lambda-list definition) lambda-list
+                          (%fun-name definition) debug-name))
             name))))
   (progn
     (def (:load-toplevel :execute) #-sb-xc-host t #+sb-xc-host nil)