0.7.8.33:
authorChristophe Rhodes <csr21@cam.ac.uk>
Sat, 12 Oct 2002 18:12:34 +0000 (18:12 +0000)
committerChristophe Rhodes <csr21@cam.ac.uk>
Sat, 12 Oct 2002 18:12:34 +0000 (18:12 +0000)
Allow dumping of non-SIMPLE-ARRAY vectors (bug report from cmucl-help
saved at Entomotomy under the name
dumping-of-non-simple-vectors-fails) (thanks to Pierre Mai
for discussion)

src/compiler/dump.lisp
tests/dump.impure-cload.lisp
version.lisp-expr

index 9e50e68..4e1255a 100644 (file)
 ;;; tables.
 (defun dump-vector (x file)
   (let ((simple-version (if (array-header-p x)
-                           (coerce x 'simple-array)
+                           (coerce x `(simple-array
+                                       ,(array-element-type x)
+                                       (*)))
                            x)))
     (typecase simple-version
       (simple-base-string
index 5a468f2..6017d0b 100644 (file)
 
 (defparameter *path* #p"MY-LOGICAL-HOST:FOO;BAR.LISP")
 
+;;; Non-SIMPLE-ARRAY VECTORs should be dumpable, though they can lose
+;;; their complex attributes.
+
+(defparameter *string* #.(make-array 3 :initial-element #\a
+                                      :fill-pointer 2
+                                      :element-type 'character))
+
 (sb-ext:quit :unix-status 104) ; success
index f5d70ac..c394e89 100644 (file)
@@ -18,4 +18,4 @@
 ;;; internal versions off the main CVS branch, it gets hairier, e.g.
 ;;; "0.pre7.14.flaky4.13".)
 
-"0.7.8.32"
+"0.7.8.33"