GNU bug report logs -
#18866
bytevector-copy creates srfi-4 vector with greater length
Previous Next
Reported by: tantalum <sph <at> posteo.eu>
Date: Tue, 28 Oct 2014 07:15:07 UTC
Severity: normal
Done: Mark H Weaver <mhw <at> netris.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
[Message part 1 (text/plain, inline)]
Your bug report
#18866: bytevector-copy creates srfi-4 vector with greater length
which was filed against the guile package, has been closed.
The explanation is attached below, along with your original report.
If you require more details, please reply to 18866 <at> debbugs.gnu.org.
--
18866: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=18866
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
tantalum <sph <at> posteo.eu> writes:
> with guile version 2.1.0.89-c5ea7 on an x86_64 GNU/Linux system
> and the following code
> (use-modules (srfi srfi-4) (rnrs bytevectors))
> (define a (make-f32vector 2 0))
> (define b (bytevector-copy a))
> (write (list a b))
>
> "b" turns out to be an f32vector with length 8, 4 times the length of "a".
> i expected the result to have the same length as the argument
>
> see also http://lists.gnu.org/archive/html/guile-devel/2014-10/msg00064.html
I fixed this in 10679f4c59fcffb0657219e28e38d15df8ad09a0 by changing
'bytevector-copy' to always produce a standard bytevector with unsigned
8-bit elements, as if 'bytevector-copy' was implemented using the
standard procedures 'make-bytevector', 'bytevector-length', etc.
This is on the stable-2.0 branch and will be in Guile 2.0.12.
I'm open to the idea of adding another procedure that copies arbitrary
SRFI-4 vectors, but I think it should have a different name. If you'd
like to persue this, let's create another ticket for it.
I'm closing this bug now.
Thanks,
Mark
[Message part 3 (message/rfc822, inline)]
with guile version 2.1.0.89-c5ea7 on an x86_64 GNU/Linux system
and the following code
(use-modules (srfi srfi-4) (rnrs bytevectors))
(define a (make-f32vector 2 0))
(define b (bytevector-copy a))
(write (list a b))
"b" turns out to be an f32vector with length 8, 4 times the length of "a".
i expected the result to have the same length as the argument
see also http://lists.gnu.org/archive/html/guile-devel/2014-10/msg00064.html
This bug report was last modified 10 years and 252 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.