X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fbyte-types.lisp;h=e8b85d624fd151d1a39a873b256d46e651f3610a;hb=ea36d3d79b9dfe3598faca5e267efd5980b94d4a;hp=8f7824ed2fac58360ac166ee9dfcdc6b6a8215bb;hpb=a530bbe337109d898d5b4a001fc8f1afa3b5dc39;p=sbcl.git diff --git a/src/code/byte-types.lisp b/src/code/byte-types.lisp index 8f7824e..e8b85d6 100644 --- a/src/code/byte-types.lisp +++ b/src/code/byte-types.lisp @@ -10,14 +10,11 @@ ;;;; files for more information. (in-package "SB!C") - -(file-comment - "$Header$") ;;;; types (deftype stack-pointer () - `(integer 0 ,(1- most-positive-fixnum))) + `(integer 0 ,(1- sb!vm:*target-most-positive-fixnum*))) ;;; KLUDGE: bare numbers, no documentation, ick.. -- WHN 19990701 (eval-when (:compile-toplevel :load-toplevel :execute) @@ -49,7 +46,8 @@ (lambda (x stream) (print-unreadable-object (x stream :type t :identity t) (prin1 (byte-function-name (byte-closure-function x)) - stream))))) + stream)))) + (:copier nil)) ;; the byte function that we call (function (required-argument) :type byte-function) ;; the closure data vector @@ -59,7 +57,8 @@ ;;; object for a closure) (defstruct (byte-function (:include byte-function-or-closure) (:type funcallable-structure) - (:constructor nil)) + (:constructor nil) + (:copier nil)) ;; The component that this XEP is an entry point into. NIL until ;; LOAD or MAKE-CORE-BYTE-COMPONENT fills it in. They count on this ;; being the first slot. @@ -76,7 +75,8 @@ ;;; fixed-argument byte function (defstruct (simple-byte-function (:include byte-function) - (:type funcallable-structure)) + (:type funcallable-structure) + (:copier nil)) ;; The number of arguments expected. (num-args 0 :type (integer 0 #.call-arguments-limit)) ;; The start of the function. @@ -84,7 +84,8 @@ ;;; variable-arg-count byte function (defstruct (hairy-byte-function (:include byte-function) - (:type funcallable-structure)) + (:type funcallable-structure) + (:copier nil)) ;; The minimum and maximum number of args, ignoring &REST and &KEY. (min-args 0 :type (integer 0 #.call-arguments-limit)) (max-args 0 :type (integer 0 #.call-arguments-limit)) @@ -100,11 +101,11 @@ (rest-arg-p nil :type (member t nil)) ;; True if there are keywords. Note: keywords might still be NIL ;; because having &KEY with no keywords is valid and should result - ;; in allow-other-keys processing. If :allow-others, then allow + ;; in &ALLOW-OTHER-KEYS processing. If :ALLOW-OTHERS, then allow ;; other keys. (keywords-p nil :type (member t nil :allow-others)) - ;; List of keyword arguments. Each element is a list of: - ;; key, default, supplied-p. + ;; list of &KEY arguments. Each element is a list of: + ;; key, default, supplied-p. (keywords nil :type list)) #!-sb-fluid (declaim (freeze-type byte-function-or-closure))