0.6.11.17:
[sbcl.git] / src / code / defstruct.lisp
index 8246414..c48bc58 100644 (file)
@@ -11,6 +11,8 @@
 ;;;; files for more information.
 
 (in-package "SB!KERNEL")
+
+(/show0 "code/defstruct.lisp 15")
 \f
 ;;;; getting LAYOUTs
 
        (if (class-structure-p dd)
           (let ((inherits (inherits-for-structure dd)))
             `(progn
+               (/noshow0 "doing CLASS-STRUCTURE-P case for DEFSTRUCT " ,name)
                (eval-when (:compile-toplevel :load-toplevel :execute)
                  (%compiler-only-defstruct ',dd ',inherits))
                (%defstruct ',dd ',inherits)
                ,@(when (eq (dd-type dd) 'structure)
                    `((%compiler-defstruct ',dd)))
+               (/noshow0 "starting not-for-the-xc-host section in DEFSTRUCT")
                ,@(unless expanding-into-code-for-xc-host-p
                    (append (raw-accessor-definitions dd)
                            (predicate-definitions dd)
                                        ;(copier-definition dd)
                            (constructor-definitions dd)
                            (class-method-definitions dd)))
+               (/noshow0 "done with DEFSTRUCT " ,name)
                ',name))
           `(progn
+             (/show0 "doing NOT CLASS-STRUCTURE-P case for DEFSTRUCT " ,name)
              (eval-when (:compile-toplevel :load-toplevel :execute)
                (setf (info :typed-structure :info ',name) ',dd))
              ,@(unless expanding-into-code-for-xc-host-p
                          (typed-predicate-definitions dd)
                          (typed-copier-definitions dd)
                          (constructor-definitions dd)))
+             (/noshow0 "done with DEFSTRUCT " ,name)
              ',name)))))
 
 (sb!xc:defmacro defstruct (name-and-options &rest slot-descriptions)
   #!+sb-doc
   "DEFSTRUCT {Name | (Name Option*)} {Slot | (Slot [Default] {Key Value}*)}
-   Define the structure type Name. Instances are created by MAKE-<name>, which
-   takes keyword arguments allowing initial slot values to the specified.
+   Define the structure type Name. Instances are created by MAKE-<name>, 
+   which takes &KEY arguments allowing initial slot values to the specified.
    A SETF'able function <name>-<slot> is defined for each slot to read and
    write slot values. <name>-p is a type predicate.
 
                     (rest args)))
         (inherits (inherits-for-structure defstruct)))
     (function-%compiler-only-defstruct defstruct inherits)))
+
+(/show0 "code/defstruct.lisp end of file")