+ ;; A bivalent stream can be read to a unsigned-byte vector, a
+ ;; string, or a generic vector
+
+ (let ((sequence (make-array 1 :element-type '(unsigned-byte 8))))
+ (with-open-file (stream pathname
+ :direction :input
+ :element-type :default)
+ (read-sequence sequence stream)
+ (assert (equalp sequence #(255)))))
+
+ (let ((sequence (make-array 1 :element-type 'character)))
+ (with-open-file (stream pathname
+ :direction :input
+ :external-format :latin-1
+ :element-type :default)
+ (read-sequence sequence stream)
+ (assert (equalp sequence #(#.(code-char 255))))))
+
+ (let ((sequence (make-array 1)))
+ (with-open-file (stream pathname
+ :direction :input
+ :external-format :latin-1
+ :element-type :default)
+ (read-sequence sequence stream)
+ (assert (equalp sequence #(#.(code-char 255))))))
+