0.6.12.34:
authorWilliam Harold Newman <william.newman@airmail.net>
Wed, 13 Jun 2001 17:19:45 +0000 (17:19 +0000)
committerWilliam Harold Newman <william.newman@airmail.net>
Wed, 13 Jun 2001 17:19:45 +0000 (17:19 +0000)
belatedly bumped fasl file version number because the inline
type test patches changed the layout of STREAM
Bug 23 is fixed, so delete it from BUGS.
merged MNA fixes for tests/interface.lisp (sbcl-devel
2001-06-12)

src/code/early-fasl.lisp
tests/interface.pure.lisp
version.lisp-expr

index e1eb072..8b2af91 100644 (file)
@@ -38,7 +38,7 @@
 
 ;;; This value should be incremented when the system changes in such
 ;;; a way that it will no longer work reliably with old fasl files.
-(defconstant +fasl-file-version+ 14)
+(defconstant +fasl-file-version+ 15)
 ;;; 2 = sbcl-0.6.4 uses COMPILE-OR-LOAD-DEFGENERIC.
 ;;; 3 = sbcl-0.6.6 uses private symbol, not :EMPTY, for empty HASH-TABLE slot.
 ;;; 4 = sbcl-0.6.7 uses HAIRY-DATA-VECTOR-REF and HAIRY-DATA-VECTOR-SET
@@ -64,6 +64,7 @@
 ;;; 12 = sbcl-0.6.12.22 added new SB-FASL package
 ;;; 13 = sbcl-0.6.12.28 removed some elements from *STATIC-SYMBOLS* 
 ;;; 14 = sbcl-0.6.12.29 removed more elements from *STATIC-SYMBOLS* 
+;;; 15 = sbcl-0.6.12.33 changed the layout of STREAM
 
 ;;; the conventional file extension for fasl files on this
 ;;; architecture, e.g. "x86f"
index 1986498..5ab2fd3 100644 (file)
   (declare (type function function))
   ;; The Lisp-level type FUNCTION can conceal a multitude of sins..
   (case (sb-kernel:get-type function)
-    (#.sb-vm:function-header-type (sb-kernel:%function-arglist function))
-    (#.sb-vm:closure-function-header-type (has-arglist-info-p
-                                          (sb-kernel:%closure-function
-                                           function)))
+    ((#.sb-vm:function-header-type #.sb-vm:closure-function-header-type)
+      (sb-kernel:%function-arglist function))
+    (#.sb-vm:closure-header-type (has-arglist-info-p
+                                  (sb-kernel:%closure-function
+                                   function)))
+    ;; in code/describe.lisp, ll. 227 (%describe-function), we use a scheme
+    ;; like above, and it seems to work. -- MNA 2001-06-12
+    ;;
     ;; (There might be other cases with arglist info also.
-    ;; FUNCTION-HEADER-TYPE and CLOSURE-FUNCTION-HEADER-TYPE just
+    ;; FUNCTION-HEADER-TYPE and CLOSURE-HEADER-TYPE just
     ;; happen to be the two case that I had my nose rubbed in when
     ;; debugging a GC problem caused by applying %FUNCTION-ARGLIST to
     ;; a closure. -- WHN 2001-06-05)
              ((sb-int:info :function :accessor-for ext-sym)
               (values))
              ((typep fun 'generic-function)
-              ;; FIXME: Check the argument lists of generic functions,
-              ;; instead of just punting like this. (DESCRIBE seems
-              ;; to know how to do it, at least for #'DOCUMENTATION.)
-              (values))
-             (;; FIXME: CONDITION slot accessors (e.g.
-              ;; PRINT-NOT-READABLE-OBJECT) fall into this category.
-              ;; They seem to have argument lists -- since at least
-              ;; DESCRIBE knows how to find them -- but I have
-              ;; neither reverse engineered how it's finding them,
-              ;; nor factored that into a function which can be
-              ;; shared with the logic here..
-              (= (sb-kernel:get-type fun) sb-vm:closure-header-type)
-              (values)) ; ..so for now we just punt.
+                (sb-pcl::generic-function-pretty-arglist fun))
              (t
               (let ((fun (symbol-function ext-sym)))
                 (unless (has-arglist-info-p fun)
index 38bde20..7a3b4dd 100644 (file)
@@ -15,4 +15,4 @@
 ;;; versions, and a string like "0.6.5.12" is used for versions which
 ;;; aren't released but correspond only to CVS tags or snapshots.
 
-"0.6.12.33"
+"0.6.12.34"