diff options
author | Daniel Llorens <daniel.llorens@bluewin.ch> | 2013-04-11 13:10:08 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2014-01-27 21:45:17 +0100 |
commit | 413c7156795cedb453ebf68c3dd6fd376a64a12b (patch) | |
tree | 043e5b542b4dd161e610832978849d7e2b43af36 /libguile/stime.c | |
parent | 943f690a308f917fbac994fc1dd14d339879d6d4 (diff) | |
download | guile-413c7156795cedb453ebf68c3dd6fd376a64a12b.tar.gz |
For uniform vectors SCM_I_ARRAYP can't be true
This fixes an inconsistency where uniform-vector? of a shared array could
be true but -ref operations failed to account correctly for lbnd.
* libguile/uniform.c
- scm_is_uniform_vector: SCM_I_ARRAYP disqualifies obj as uniform vector.
- scm_c_uniform_vector_length: lbnd is known 0, so don't use it.
- scm_c_uniform_vector_ref: lbnd/base/inc are known to be 0/0/1.
- scm_c_uniform_vector_set_x!: idem.
- scm_uniform_vector_writable_elements: check uvec's type.
* test-suite/tests/arrays.test
- group the exception types at the top.
- check that uniform-vector functions do not accept general arrays.
Diffstat (limited to 'libguile/stime.c')
0 files changed, 0 insertions, 0 deletions