diff options
author | Daniel Llorens <daniel.llorens@bluewin.ch> | 2013-04-10 01:07:02 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2014-01-27 21:45:17 +0100 |
commit | 951ce0f413269f14ed7f763c40b2c343fe73eb8c (patch) | |
tree | ce7180d3899abf6dd668b259a8b14f0de437388d | |
parent | 0362859c2877d09dd966f526aa0ddc4b858c5bb3 (diff) | |
download | guile-951ce0f413269f14ed7f763c40b2c343fe73eb8c.tar.gz |
Remove unnecessary conditions in array constructors
* libguile/arrays.c: (scm_make_type_array, scm_from_contigous_typed_array,
scm_from_contigous_array): Remove conditions known to be true.
-rw-r--r-- | libguile/arrays.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libguile/arrays.c b/libguile/arrays.c index 16bc018f2..2ade884f3 100644 --- a/libguile/arrays.c +++ b/libguile/arrays.c @@ -195,8 +195,9 @@ SCM_DEFINE (scm_make_typed_array, "make-typed-array", 2, 0, 1, scm_make_generalized_vector (type, scm_from_size_t (rlen), fill); if (1 == SCM_I_ARRAY_NDIM (ra) && 0 == SCM_I_ARRAY_BASE (ra)) - if (s->ubnd < s->lbnd || (0 == s->lbnd && 1 == s->inc)) + if (0 == s->lbnd) return SCM_I_ARRAY_V (ra); + return ra; } #undef FUNC_NAME @@ -254,7 +255,7 @@ scm_from_contiguous_typed_array (SCM type, SCM bounds, const void *bytes, memcpy (elts, bytes, byte_len); if (1 == SCM_I_ARRAY_NDIM (ra) && 0 == SCM_I_ARRAY_BASE (ra)) - if (s->ubnd < s->lbnd || (0 == s->lbnd && 1 == s->inc)) + if (0 == s->lbnd) return SCM_I_ARRAY_V (ra); return ra; } @@ -289,7 +290,7 @@ scm_from_contiguous_array (SCM bounds, const SCM *elts, size_t len) scm_array_handle_release (&h); if (1 == SCM_I_ARRAY_NDIM (ra) && 0 == SCM_I_ARRAY_BASE (ra)) - if (s->ubnd < s->lbnd || (0 == s->lbnd && 1 == s->inc)) + if (0 == s->lbnd) return SCM_I_ARRAY_V (ra); return ra; } |