[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: contents of empty shared array
From: |
Kevin Ryde |
Subject: |
Re: contents of empty shared array |
Date: |
Thu, 14 Dec 2006 09:12:31 +1100 |
User-agent: |
Gnus/5.110006 (No Gnus v0.6) Emacs/21.4 (gnu/linux) |
SZAVAI Gyula <address@hidden> writes:
>
> (let ((a (make-shared-array #() (lambda x #f) 0 2)))
> (array-contents a))
> ==> #f
I suppose an empty shared array ought to be considered contiguous.
> --- orig/libguile/unif.c 2006-11-30 10:25:50.101433600 +0100
> +++ mod/libguile/unif.c 2006-11-30 13:03:16.244320000 +0100
> @@ -900,6 +900,7 @@
> {
> SCM_I_ARRAY_V (ra) = make_typed_vector (scm_array_type (ra), 0);
> scm_array_handle_release (&old_handle);
> + SCM_SET_ARRAY_CONTIGUOUS_FLAG (ra);
> return ra;
Is that meant to be confined to the SCM_I_ARRAY_V case (per below)?
One of the lurking array experts will have to say ...
--- unif.c.~1.192.2.6.~ 2006-12-13 09:38:49.000000000 +1100
+++ unif.c 2006-12-14 09:09:33.000000000 +1100
@@ -901,7 +901,10 @@
if (1 == SCM_I_ARRAY_NDIM (ra))
ra = make_typed_vector (scm_array_type (ra), 0);
else
+ {
SCM_I_ARRAY_V (ra) = make_typed_vector (scm_array_type (ra), 0);
+ SCM_SET_ARRAY_CONTIGUOUS_FLAG (ra);
+ }
scm_array_handle_release (&old_handle);
return ra;
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Re: contents of empty shared array,
Kevin Ryde <=