Neil Jerram
5a6d139b35
* unif.c (scm_i_read_array): Declare rank as ssize_t, to guarantee
...
that it is signed.
* strports.c (st_resize_port): Add unsigned char cast.
(scm_mkstrport): Make read/write_buf cast unsigned.
* srfi-13.c (string_titlecase_x): Add unsigned char cast.
* rdelim.c (scm_read_line): Initialize slen.
* load.c (scm_search_path): Remove weird >=1, and add
parentheses to clarify conditions.
* hash.c (scm_hasher): Add const unsigned char cast.
* gh_data.c (gh_chars2byvect): Add scm_t_int8 cast.
2005-05-12 06:39:50 +00:00
Neil Jerram
b01532af77
* threads.c (s_scm_lock_mutex): Don't declare msg in middle of
...
code.
* gc.c (s_scm_gc_live_object_stats): Don't declare alist in middle
of code.
* gc-card.c (scm_i_card_statistics): Don't declare tag in middle
of code.
(scm_i_card_statistics): Add block for declarations of tag_as_scm
and current.
2005-05-11 07:41:36 +00:00
Neil Jerram
229a07109c
(signal_delivery_thread): Return a value, to avoid
...
compile warning reported by Werner Scheinast.
2005-05-10 20:04:14 +00:00
Han-Wen Nienhuys
8003802199
remove scm_list()
2005-04-30 20:54:35 +00:00
Han-Wen Nienhuys
645dd3fc36
(DYNAMIC_STATE_NEXT_LOC): new macro for use with
...
SCM_DEBUG_CELL_ACCESSES
(FLUID_NEXT_LOC): idem.
2005-04-30 20:07:50 +00:00
Kevin Ryde
9a68a4a8af
*** empty log message ***
2005-04-29 23:03:41 +00:00
Kevin Ryde
4c6e36a6e3
(scm_divide): Correction to 1/complex and <any>/complex,
...
need to test abs(re)<abs(im) for choice of cases, otherwise divide by
zero when re==0 and im<0. Reported by Jean Crepeau.
2005-04-29 22:59:22 +00:00
Kevin Ryde
0640cdaa8b
*** empty log message ***
2005-04-25 00:04:02 +00:00
Kevin Ryde
f530e94f5d
(scm_array_map_x): Allow no source args, add num args checks
...
to subr_1, subr_2, subr_2o and dsubr cases.
2005-04-25 00:02:47 +00:00
Neil Jerram
7346de618a
Fix comment typos
2005-04-24 12:23:57 +00:00
Neil Jerram
a61b2054b4
Critical section review
2005-04-24 12:23:24 +00:00
Kevin Ryde
c51682b416
*** empty log message ***
2005-04-23 00:17:33 +00:00
Kevin Ryde
15f7341ed4
(scm_make_list): New code, moving make-list from boot-9.scm.
2005-04-23 00:15:16 +00:00
Kevin Ryde
8cb2eff840
*** empty log message ***
2005-04-23 00:07:17 +00:00
Kevin Ryde
2ac6b60e86
(scm_make_list): New code, moving make-list from boot-9.scm.
2005-04-23 00:06:14 +00:00
Kevin Ryde
c0b85e9c82
*** empty log message ***
2005-04-22 23:44:24 +00:00
Kevin Ryde
fad3aaf11a
(list): Use scm_list_copy, so as to produce a fresh list when
...
list is called using apply, under the debugging evaluator.
(scm_list): Remove.
2005-04-22 23:43:06 +00:00
Kevin Ryde
4cff503fc8
(scm_hashx_remove_x): Need to pass "closure" to scm_hash_fn_remove_x.
2005-04-22 23:33:15 +00:00
Kevin Ryde
b906b056e4
(scm_cons_star): Don't modify the rest list, it belongs to
...
the caller when cons* is reached through apply.
2005-04-22 23:18:59 +00:00
Kevin Ryde
c0575bde34
*** empty log message ***
2005-04-14 00:38:41 +00:00
Kevin Ryde
40882e3d0b
(scm_oneplus, scm_oneminus): New functions, converted from
...
scheme code in boot-9.scm.
2005-04-14 00:35:50 +00:00
Kevin Ryde
47a298d959
*** empty log message ***
2005-04-10 22:15:44 +00:00
Kevin Ryde
57d9803440
(scm_string_concatenate, scm_string_concatenate_shared):
...
Validate list argument, scm_string_append and scm_string_append_shared
don't do that to their rest argument (in a normal build).
2005-04-10 22:14:15 +00:00
Marius Vollmer
8ea3dc2e0c
*** empty log message ***
2005-04-04 14:54:45 +00:00
Marius Vollmer
d3a80924bc
(scm_t_hashtable): Removed 'closure' field. The
...
closure can not be stored since it is no longer valid at GC time.
(make_hash_table): Initialize 'hash_fn' field.
(scm_i_rehash): Only store hash_fn in hash table when closre is
NULL.
(rehash_after_gc): Only call scm_i_rehash when 'hash_fn' is
non-NULL. Always use a NULL closure.
(scm_hash_fn_create_handle_x): Also rehash when table contains too
few entries.
2005-04-04 14:53:27 +00:00
Neil Jerram
33b320ae2a
Critical section review.
2005-03-30 22:11:07 +00:00
Neil Jerram
2b0fb0a50e
Critical section review.
2005-03-30 18:43:49 +00:00
Neil Jerram
e45947bf06
Critical section review
2005-03-30 18:32:19 +00:00
Marius Vollmer
08d2020d3a
*** empty log message ***
2005-03-29 17:51:22 +00:00
Marius Vollmer
a9cf5c7168
(scm_hash_fx_remove_x): Removed delete_fn
...
argument; always use scm_delq_x. The delete_fn function works on
the handle, not the key, and it therefore makes no sense to make
it configurable. Changed all callers.
(scm_hashx_remove_x): Likewise. Also, exported to Scheme.
(scm_hash_clear): Accept plain vectors as hashtables.
(scm_delx_x): Removed.
2005-03-29 17:47:39 +00:00
Han-Wen Nienhuys
cb975c2105
(scm_double_cell): use __asm__ iso. asm, to maintain
...
compatibility with gcc -std=c99.
2005-03-28 11:40:58 +00:00
Mikael Djurfeldt
4c908f2c13
* async.h (scm_mask_ints): Removed left over reference to
...
scm_root.
* threads.c: Removed fprintf debug statements.
2005-03-24 10:21:22 +00:00
Neil Jerram
d193b04b7b
(scm_make_memoized): Restore use of SCM_UNPACK.
2005-03-24 07:30:19 +00:00
Neil Jerram
c29748cdfe
(scm_make_memoized): Remove unnecessary critical
...
section, and simplify by using SCM_RETURN_NEWSMOB.
2005-03-23 20:22:26 +00:00
Mikael Djurfeldt
e654b06261
(SCM_STRING_UCHARS): Added missing argument.
2005-03-20 13:56:53 +00:00
Kevin Ryde
4bc6f1c693
*** empty log message ***
2005-03-17 23:16:53 +00:00
Kevin Ryde
8ff3ca467c
(FETCH_STORE) [generic C]: Should be
...
scm_i_scm_pthread_mutex_lock/unlock now. Reported by Ludovic Courtès.
2005-03-17 23:11:54 +00:00
Kevin Ryde
f1531813b8
*** empty log message ***
2005-03-13 00:20:40 +00:00
Kevin Ryde
23c3b605b5
(scm_i_clonebig): Remove static, so can use in srfi-60.
2005-03-13 00:18:34 +00:00
Kevin Ryde
9806de0dca
(scm_logior): Must scm_i_normbig results as per scm_logand,
...
because OR-ing bits into a negative can reduce the value to an inum.
2005-03-13 00:16:22 +00:00
Kevin Ryde
e8c5b1f291
(scm_num_eq_p): On 64-bit systems, be careful about
...
casting inum to double since that can lose precision.
2005-03-13 00:13:10 +00:00
Marius Vollmer
a9fae247a3
*** empty log message ***
2005-03-10 18:43:04 +00:00
Marius Vollmer
98345eebf9
(scm_i_init_guile): Do not set scm_block_gc.
2005-03-10 18:42:52 +00:00
Marius Vollmer
fd20058d74
(SCM_BEGIN_FOREIGN_BLOCK, SCM_END_FOREIGN_BLOCK): Do not set
...
scm_block_gc.
2005-03-10 18:42:11 +00:00
Marius Vollmer
b17e0ac397
* gc.h, gc.c (SCM_FREECELL_P): Removed for good.
...
(scm_block_gc, scm_gc_heap_lock): Removed. Removed all uses.
(scm_gc_running_p): Now a macro that refers to the scm_i_thread
field.
(scm_i_sweep_mutex): Now a non-recursive mutex. GC can not happen
recursively.
(scm_igc, scm_i_gc): Renamed former to latter. Changed all uses.
Do not lock scm_i_sweep_mutex, which is now non-recursive, or set
scm_gc_running_p. Do not run the scm_after_gc_c_hook.
(scm_gc): Lock scm_i_sweep_mutex, set scm_gc_running_p and run the
scm_after_gc_c_hook here.
(scm_gc_for_new_cell): Set scm_gc_running_p here and run the
scm_after_gc_c_hook when a full GC has in fact been performed.
(scm_i_expensive_validation_check): Call scm_gc, not scm_i_gc.
* gc-segment.c (scm_i_get_new_heap_segment): Do not check
scm_gc_heap_lock.
* gc-malloc.c (scm_realloc, increase_mtrigger): Set
scm_gc_running_p while the scm_i_sweep_mutex is locked.
2005-03-10 18:39:53 +00:00
Marius Vollmer
94d375b5a7
(scm_cell, scm_double_cell): Do not check scm_gc_running_p, allocation
...
during sweeping is OK.
2005-03-10 18:08:12 +00:00
Marius Vollmer
1a8fdd7e12
(scm_i_thread): Added gc_running_p field.
...
(guilify_self_1): Initialize it.
2005-03-10 18:06:54 +00:00
Marius Vollmer
fc240b46e9
(scm_c_issue_deprecation_warning): Use malloc instead of scm_malloc.
...
The latter can not be used during GC.
2005-03-10 18:05:25 +00:00
Marius Vollmer
d1c38e114e
*** empty log message ***
2005-03-09 22:15:32 +00:00
Marius Vollmer
d152d44ba8
(scm_compile_shell_switches): Added 2005 to Copyright years.
2005-03-09 22:11:56 +00:00