1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-10 14:00:21 +02:00

* unif.c (scm_bitvector_release): Added explicit call to

scm_remember_upto_here_1.

(scm_uniform_vector_elements,
scm_u8vector_elements, etc): Made return value "const".
(scm_uniform_vector_writable_elements,
scm_u8vector_writable_elements, etc): New.
(scm_uniform_vector_release, scm_uniform_vector_release_elements):
Renamed former to latter.  Added explicit call to
scm_remember_upto_here_1.
(scm_frame_uniform_vector_release,
scm_frame_uniform_vector_release_elements): Renamed former to latter.
(scm_uniform_vector_release_writable_elements,
scm_frame_uniform_vector_release_writable_elements): New. Takes
crown of longest identifier yet.
Changed all uses as required by the changes above.
This commit is contained in:
Marius Vollmer 2004-12-27 02:11:16 +00:00
parent b590aceb96
commit d817a70c3d

View file

@ -1334,6 +1334,8 @@ scm_bitvector_release (SCM vec)
Also, a call to scm_bitvector_release acts like
scm_remember_upto_here, which is needed in any case.
*/
scm_remember_upto_here_1 (vec);
}
void
@ -1636,7 +1638,7 @@ SCM_DEFINE (scm_bit_set_star_x, "bit-set*!", 3, 0, 0,
else if (scm_is_true (scm_u32vector_p (kv)))
{
size_t ulen, i;
scm_t_uint32 *indices;
const scm_t_uint32 *indices;
/* assert that obj is a boolean.
*/
@ -1646,7 +1648,7 @@ SCM_DEFINE (scm_bit_set_star_x, "bit-set*!", 3, 0, 0,
ulen = scm_c_uniform_vector_length (kv);
indices = scm_u32vector_elements (kv);
scm_frame_uniform_vector_release (kv);
scm_frame_uniform_vector_release_elements (kv);
for (i = 0; i < ulen; i++)
scm_c_bitvector_set_x (v, (size_t)indices[i], obj);
@ -1714,14 +1716,14 @@ SCM_DEFINE (scm_bit_count_star, "bit-count*", 3, 0, 0,
else if (scm_is_true (scm_u32vector_p (kv)))
{
size_t count = 0, ulen, i;
scm_t_uint32 *indices;
const scm_t_uint32 *indices;
int bit = scm_to_bool (obj);
scm_frame_begin (0);
ulen = scm_c_uniform_vector_length (kv);
indices = scm_u32vector_elements (kv);
scm_frame_uniform_vector_release (kv);
scm_frame_uniform_vector_release_elements (kv);
for (i = 0; i < ulen; i++)
if ((scm_is_true (scm_c_bitvector_ref (v, (size_t)indices[i])) != 0)