X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2Fcompiler%2Fgeneric%2Fgenesis.lisp;h=28eb128cad9c260fcc42b88b957613eaf5ff19f4;hb=68c539ab90bb39f342229e68bf9286f63824597a;hp=355f417318128b3d4d52b39f76593489fffd0260;hpb=95a6db7329b91dd90d165dd4057b9b5098d34aa2;p=sbcl.git diff --git a/src/compiler/generic/genesis.lisp b/src/compiler/generic/genesis.lisp index 355f417..28eb128 100644 --- a/src/compiler/generic/genesis.lisp +++ b/src/compiler/generic/genesis.lisp @@ -6,13 +6,20 @@ ;;;; As explained by Rob MacLachlan on the CMU CL mailing list Wed, 06 ;;;; Jan 1999 11:05:02 -0500, this cold load generator more or less ;;;; fakes up static function linking. I.e. it makes sure that all the -;;;; functions in the fasl files it reads are bound to the +;;;; DEFUN-defined functions in the fasl files it reads are bound to the ;;;; corresponding symbols before execution starts. It doesn't do ;;;; anything to initialize variable values; instead it just arranges ;;;; for !COLD-INIT to be called at cold load time. !COLD-INIT is ;;;; responsible for explicitly initializing anything which has to be ;;;; initialized early before it transfers control to the ordinary ;;;; top-level forms. +;;;; +;;;; (In CMU CL, and in SBCL as of 0.6.9 anyway, functions not defined +;;;; by DEFUN aren't set up specially by GENESIS. In particular, +;;;; structure slot accessors are not set up. Slot accessors are +;;;; available at cold init time because they're usually compiled +;;;; inline. They're not available as out-of-line functions until the +;;;; toplevel forms installing them have run.) ;;;; This software is part of the SBCL system. See the README file for ;;;; more information. @@ -44,7 +51,8 @@ ;;; ;;; 0: inherited from CMU CL ;;; 1: rearranged static symbols for sbcl-0.6.8 -;;; 2: eliminated non-ANSI %DEFCONSTANT/%%DEFCONSTANT support +;;; 2: eliminated non-ANSI %DEFCONSTANT/%%DEFCONSTANT support, +;;; deleted a slot from DEBUG-SOURCE structure (defconstant sbcl-core-version-integer 2) (defun round-up (number size)