X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fearly-defstruct-args.lisp-expr;h=682594f66898110322ab93a93b65963c1fe446b5;hb=4ba392170e98744f0ef0b8e08a5d42b988f1d0c9;hp=6bc24405f9873315ea8053abec6247fa94b9b6de;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/code/early-defstruct-args.lisp-expr b/src/code/early-defstruct-args.lisp-expr index 6bc2440..682594f 100644 --- a/src/code/early-defstruct-args.lisp-expr +++ b/src/code/early-defstruct-args.lisp-expr @@ -1,4 +1,5 @@ -;;;; descriptions of DEFSTRUCTs which are to be handled before any others +;;;; descriptions of ordinary (non-ALTERNATE-METACLASS) DEFSTRUCTs +;;;; which are to be handled before any others ;;;; This software is part of the SBCL system. See the README file for ;;;; more information. @@ -9,18 +10,7 @@ ;;;; provided with absolutely no warranty. See the COPYING and CREDITS ;;;; files for more information. -;;;; $Header$ - -(;; Define the STRUCTURE-OBJECT class as a subclass of - ;; INSTANCE. This has to be handled early because the design of the - ;; DEFSTRUCT system, dating back to pre-1999 CMU CL, requires that - ;; STRUCTURE-OBJECT be the first DEFSTRUCT executed. - ((structure-object (:alternate-metaclass sb!kernel:instance) - (:copier nil)) - ;; (There are no slots.) - ) - - ;; The target ALIEN-VALUE class must be defined early in the cross-compiler +(;; The target ALIEN-VALUE class must be defined early in the cross-compiler ;; build sequence in order to set up superclass relationships involving it. ;; ;; FIXME: Since this definition refers to SB!ALIEN:ALIEN-TYPE, which is also @@ -28,6 +18,8 @@ ;; somewhere before this definition, to define SB!ALIEN:ALIEN-TYPE? That ;; way, any tests for SB!ALIEN:ALIEN-TYPE in the slot accessor functions ;; could be implemented more efficiently. - ((sb!alien-internals:alien-value) - (sap (required-argument) :type sb!sys:system-area-pointer) - (type (required-argument) :type sb!alien::alien-type))) + ;; + ;; (The #|DEF|# here is to help find this definition with lexical search.) + (#|def|# (sb!alien-internals:alien-value) + (sap (missing-arg) :type sb!sys:system-area-pointer) + (type (missing-arg) :type sb!alien::alien-type)))