diff --git a/lib/srfi/160/base.sld b/lib/srfi/160/base.sld index bce22d49..fb75093e 100644 --- a/lib/srfi/160/base.sld +++ b/lib/srfi/160/base.sld @@ -119,7 +119,13 @@ (define (f64vector . ls) (list->f64vector ls)) (define (c64vector . ls) (list->c64vector ls)) (define (c128vector . ls) (list->c128vector ls)) - (define (make-u1vector len) (make-uvector SEXP_U1 len)) + (define (make-u1vector len . o) + (let ((res (make-uvector SEXP_U1 len))) + (if (and (pair? o) (not (zero? (car o)))) + (do ((i 0 (+ i 1))) + ((>= i len)) + (u1vector-set! res i 1))) + res)) (define make-u8vector make-bytevector) (define (make-s8vector len . o) (let ((res (make-uvector SEXP_S8 len)))