guile-1.8-20061126
(let ((b (make-shared-array #(1) (lambda (x) '(0)) 2)))
(list b
(vector->list b)))
==> (#(1 1) ())
--- orig/libguile/vectors.c 2006-11-28 10:15:36.354766400 +0100
+++ mod/libguile/vectors.c 2006-11-28 10:21:52.195198400 +0100
@@ -392,11 +392,11 @@
SCM res = SCM_EOL;
const SCM *data;
scm_t_array_handle handle;
- size_t i, len;
+ size_t i, j, len;
ssize_t inc;
data = scm_vector_elements (v, &handle, &len, &inc);
- for (i = len*inc; i > 0;)
+ for (i = len*inc, j = len; j > 0; --j)
{
i -= inc;
res = scm_cons (data[i], res);
_______________________________________________
Bug-guile mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-guile