((simple-array nil (*))
(dump-unsigned-vector 0 0))
(simple-bit-vector
- (dump-unsigned-vector 1 (ceiling len 8)))
+ (dump-unsigned-vector 1 (ceiling len 8))) ; bits to bytes
;; KLUDGE: This isn't the best way of expressing that the host
;; may not have specializations for (unsigned-byte 2) and
;; (unsigned-byte 4), which means that these types are
;; CSR, 2002-05-07
#-sb-xc-host
((simple-array (unsigned-byte 2) (*))
- (dump-unsigned-vector 2 (ceiling len 8)))
+ (dump-unsigned-vector 2 (ceiling (ash len 1) 8))) ; bits to bytes
#-sb-xc-host
((simple-array (unsigned-byte 4) (*))
- (dump-unsigned-vector 4 (ceiling len 8)))
+ (dump-unsigned-vector 4 (ceiling (ash len 2) 8))) ; bits to bytes
#-sb-xc-host
((simple-array (unsigned-byte 7) (*))
(dump-unsigned-vector 7 len))
(assert (eql (savable-structure-d *savable-structure*) 39))
(assert (eql (savable-structure-e *savable-structure*) 19))
\f
+;;; ensure that we can dump and reload specialized arrays whose element
+;;; size is smaller than a byte (caused a few problems circa SBCL
+;;; 0.8.14.4)
+
+(defvar *1-bit* (make-array 5 :element-type 'bit :initial-element 0))
+(defvar *2-bit* (make-array 5 :element-type '(unsigned-byte 2) :initial-element 0))
+(defvar *4-bit* (make-array 5 :element-type '(unsigned-byte 4) :initial-element 1))
+\f
(sb-ext:quit :unix-status 104) ; success
;;; checkins which aren't released. (And occasionally for internal
;;; versions, especially for internal versions off the main CVS
;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.8.14.5"
+"0.8.14.6"