1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-06-24 12:20:20 +02:00

Add lenp parameter back to scm_vector_(writable_)elements

Also fix uses.
This commit is contained in:
Daniel Llorens 2020-02-05 15:00:25 +01:00
parent 04c80519bf
commit bf5b9a86bc
5 changed files with 17 additions and 14 deletions

View file

@ -577,7 +577,7 @@ SCM_DEFINE (scm_stable_sort_x, "stable-sort!", 2, 0, 0,
}
SCM temp = scm_c_make_vector (len, SCM_UNDEFINED);
SCM *temp_elts = scm_vector_writable_elements (temp);
SCM *temp_elts = scm_vector_writable_elements (temp, NULL);
scm_merge_vector_step (vec_elts, temp_elts, less, 0, len-1, inc);

View file

@ -56,19 +56,23 @@ scm_is_vector (SCM obj)
}
const SCM *
scm_vector_elements (SCM vec)
scm_vector_elements (SCM vec, size_t *lenp)
#define FUNC_NAME "scm_vector_elements"
{
SCM_VALIDATE_VECTOR (1, vec);
if (lenp)
*lenp = SCM_I_VECTOR_LENGTH (vec);
return SCM_I_VECTOR_ELTS (vec);
}
#undef FUNC_NAME
SCM *
scm_vector_writable_elements (SCM vec)
scm_vector_writable_elements (SCM vec, size_t *lenp)
#define FUNC_NAME "scm_vector_writable_elements"
{
SCM_VALIDATE_MUTABLE_VECTOR (1, vec);
if (lenp)
*lenp = SCM_I_VECTOR_LENGTH (vec);
return SCM_I_VECTOR_WELTS (vec);
}
#undef FUNC_NAME

View file

@ -47,8 +47,8 @@ SCM_API SCM scm_c_make_vector (size_t len, SCM fill);
SCM_API size_t scm_c_vector_length (SCM vec);
SCM_API SCM scm_c_vector_ref (SCM vec, size_t k);
SCM_API void scm_c_vector_set_x (SCM vec, size_t k, SCM obj);
SCM_API const SCM *scm_vector_elements (SCM vec);
SCM_API SCM *scm_vector_writable_elements (SCM vec);
SCM_API const SCM *scm_vector_elements (SCM vec, size_t *lenp);
SCM_API SCM *scm_vector_writable_elements (SCM vec, size_t *lenp);
#define SCM_VALIDATE_VECTOR(pos, v) \
do { \