(Now DISASSEMBLE 'PRINT produces reasonable-looking output.
In fact, AFAIK it's not flaky any more, so it should
(finally!) be mergeable back into the main branch.)
made GET-FUNCTION-SEGMENTS return a list (as its comments
claim it does, and as its callers expect) even in the
(NULL SEGMENTS) case
renamed DEFUN REQUIRED-ARG to be consistent with all the
previously-renamed MISSING-ARG calls
leaving some filing for later:-) from the monster
EVAL/EVAL-WHEN/%COMPILE/DEFUN/DEFSTRUCT cleanup:
** made inlining DEFUN inside MACROLET work again
- ** made %COMPILE set up debugging data more like the way the
- debugger expects (and maybe even completely
- correctly:-)
- *** made (DISASSEMBLE 'PRINT) work
* incompatible changes listed in NEWS:
** changed debugger prompt to "5]", "5[2]", "5[3]", etc.
** changed default output representation of *PRINT-ESCAPE*-ed
;;; error indicating that a required &KEY argument was not supplied.
;;; This function is also useful for DEFSTRUCT slot defaults
;;; corresponding to required arguments.
-(declaim (ftype (function () nil) required-arg))
-(defun required-arg ()
+(declaim (ftype (function () nil) missing-arg))
+(defun missing-arg ()
#!+sb-doc
- (/show0 "entering REQUIRED-ARG")
+ (/show0 "entering MISSING-ARG")
(error "A required &KEY or &OPTIONAL argument was not supplied."))
;;; like CL:ASSERT and CL:CHECK-TYPE, but lighter-weight
(sb!xc:defstruct (package-hashtable (:constructor %make-package-hashtable ())
(:copier nil))
;; The g-vector of symbols.
- ;; FIXME: could just be type SIMPLE-VECTOR, with REQUIRED-ARG
+ ;; FIXME: could just be type SIMPLE-VECTOR, with (MISSING-ARG) default
(table nil :type (or simple-vector null))
;; The i-vector of pname hash values.
- ;; FIXME: could just be type HASH-VECTOR, with REQUIRED-ARG
+ ;; FIXME: could just be type HASH-VECTOR, with (MISSING-ARG) default
(hash nil :type (or hash-vector null))
;; The total number of entries allowed before resizing.
;;
(print-unreadable-object (x stream :type t)
(prin1 (type-class-name x) stream)))))
;; the name of this type class (used to resolve references at load time)
- (name nil :type symbol) ; FIXME: should perhaps be REQUIRED-ARG?
+ (name nil :type symbol) ; FIXME: should perhaps be (MISSING-ARG) default?
;; Dyadic type methods. If the classes of the two types are EQ, then
;; we call the SIMPLE-xxx method. If the classes are not EQ, and
;; either type's class has a COMPLEX-xxx method, then we call it.
last-debug-fun))
(if (null segments)
(let ((offs (fun-insts-offset function)))
- (make-code-segment code offs (- max-offset offs)))
+ (list
+ (make-code-segment code offs (- max-offset offs))))
(nreverse segments)))))))
;;; Return a list of the segments of memory containing machine code
;;; for internal versions, especially for internal versions off the
;;; main CVS branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.pre7.86.flaky7.26"
+"0.pre7.86.flaky7.27"