* ice-9/boot-9.scm (make-autoload-interface): Don't call `set-car!' if
the autoload interface has already been removed from MODULE's uses.
This bug showed up when using a given module both with `autoload' and
`use-module'.
(scm_string_compare, scm_string_compare_ci, scm_string_lt,
scm_string_gt, scm_string_le, scm_string_ge, scm_string_ci_lt,
scm_string_ci_gt, scm_string_ci_le, scm_string_ci_ge): In comparisons
use "unsigned char", not signed char. This ensures comparisons are
the same as `char<?' etc, and is also the same as guile 1.6 did.
Reported by Sven Hartrumpf.
string>?, string-ci>?, string>=?, string-ci>=?): Check ordering is the
same as char<? etc. Use a define-module to keep private test bits
private.
* tests/srfi-13.test (string-compare, string-compare-ci): Ditto.
* strings.c (scm_i_take_stringbufn): Register LEN+1 bytes instead of
LEN. Without this, too much collectable memory gets unregistered,
which results in an underflow of SCM_MALLOCATED in
`decrease_mtrigger()'.
oinstead of scm_dynwind_pthread_mutex_lock so that it works when
configured --without-threads.
(SCM_APPLY, CEVAL): Likewise. Thanks to Han-Wen Nienhuys!
the fill value, dimensions->uniform-array will do the right thing
now. See scm_dimensions_to_uniform_array why we need to be tricky
about the fill value.
* unif.c (scm_dimensions_to_uniform_array): Use the prototype for
filling when the fill parameter is omitted, as documented, but
turn #\nul into 0 since s8 arrays (signified by a #\nul prototype)
can not store characters.
the fill value, dimensions->uniform-array will do the right thing
now. See scm_dimensions_to_uniform_array why we need to be tricky
about the fill value.
* unif.c (scm_dimensions_to_uniform_array): Use the prototype for
filling when the fill paramater is omitted, as documented, but
turn #\nul into 0 since s8 arrays (signified by a #\nul prototype)
can not store characters.