1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-03 21:30:29 +02:00
Commit graph

5167 commits

Author SHA1 Message Date
Marius Vollmer
bedd3f5fff *** empty log message *** 2005-11-06 22:12:25 +00:00
Marius Vollmer
9291479faa (scm_mktime): Use scm_frame_critical_section instead of
SCM_CRITICAL_SECTION_START/END since the code inside the critical
section might exit non-locally.
2005-11-06 22:12:04 +00:00
Neil Jerram
7c9c0169b4 * eval.c (sym_instead): New symbol.
(ENTER_APPLY): Remove optional use of a continuation when making
trap call.
(scm_debug_opts): Change doc for 'cheap option to make clear that
it is now obsolete.
(CEVAL, SCM_APPLY): Remove optional use of a continuation when
making trap calls, and implement substitution of eval expressions
and return values using the values that the trap call handlers
return.

* debug.h (SCM_CHEAPTRAPS_P): Removed.
2005-11-04 21:20:24 +00:00
Kevin Ryde
64cdbfc7af *** empty log message *** 2005-10-27 00:37:09 +00:00
Kevin Ryde
6fc0a1b599 2005-10-27 Ludovic Courtès <ludovic.courtes@laas.fr>
* socket.c (scm_fill_sockaddr): No need to check NULL from scm_malloc.
	(scm_connect, scm_bind, scm_sendto): Accept sockaddr object.
	(scm_addr_vector): Renamed to _scm_from_sockaddr, update usages.
	(scm_from_sockaddr, scm_to_sockaddr, scm_make_socket_address,
	scm_c_make_socket_address): New functions.
	* socket.h: Add prototypes.
2005-10-27 00:28:40 +00:00
Kevin Ryde
9c0129aca2 2005-10-27 Ludovic Courtès <ludovic.courtes@laas.fr>
* socket.c (scm_fill_sockaddr): No need to check NULL from scm_malloc.
	(scm_connect, scm_bind, scm_sendto): Accept sockaddr object.
	(scm_addr_vector): Renamed to _scm_from_sockaddr, update usages.
	(scm_from_sockaddr, scm_to_sockaddr, scm_make_socket_address,
	scm_c_make_socket_address): New functions.
2005-10-27 00:22:54 +00:00
Kevin Ryde
fc9f596c96 *** empty log message *** 2005-10-23 22:45:52 +00:00
Kevin Ryde
5cd87f557d (scm_strftime): Update docstring from posix.texi. 2005-10-23 22:29:25 +00:00
Kevin Ryde
72e3dae1e3 (scm_getsockopt, scm_setsockopt): Update docstrings from posix.texi. 2005-10-23 21:56:09 +00:00
Kevin Ryde
8fae2bf483 (scm_init_socket): Add IPPROTO_IP, IPPROTO_TCP,
IPPROTO_UDP.  Remove SOL_IP, SOL_TCP, SOL_UDP.  The former are in
POSIX spec examples, the latter are not available on for instance
NetBSD.
2005-10-23 21:35:01 +00:00
Marius Vollmer
0460c6e10f *** empty log message *** 2005-10-23 20:48:11 +00:00
Marius Vollmer
d1138028c9 * null-threads.h, pthread-threads.h
(SCM_I_PTHREAD_RECURSIVE_MUTEX_INITIALIZER): Removed.
(scm_i_pthread_mutexattr_recursive): New.

* threads.c (scm_i_pthread_mutexattr_recursive): Declare.
(scm_i_critical_section_mutex): Do not initialize statically.
(scm_threads_prehistory): Initialize
scm_i_pthread_mutexattr_recursive and scm_i_critical_section_mutex
here.

* eval.c (source_mutex): Do not initialiaze statically.
(scm_init_eval): Do it here, using
scm_i_pthread_mutexattr_recursive.
2005-10-23 20:47:49 +00:00
Kevin Ryde
5c347f8c9b *** empty log message *** 2005-10-05 00:36:04 +00:00
Marius Vollmer
7b4a9e526e *** empty log message *** 2005-09-04 21:30:24 +00:00
Marius Vollmer
475fa9a5d7 (SCM_PRINT_KEYWORD_STYLE_I, SCM_PRINT_KEYWORD_STYLE):
New.
(sym_reader): New.
(scm_print_opts): Added "quote-keywordish-symbols" option.
(quote_keywordish_symbol): New, for evaluating the option.
(scm_print_symbol_name): Use it.
(scm_init_print): Initialize new option to sym_reader.
2005-09-04 21:30:01 +00:00
Neil Jerram
5defc05d45 * eval.c (eval_letrec_inits): New.
(CEVAL): Eval letrec initializer forms using eval_letrec_inits.

* tests/r5rs_pitfall.test (1.1): Now passes.
2005-08-15 20:43:16 +00:00
Kevin Ryde
1729055bcf (scm_string_for_each_index): Correction to docstring. 2005-08-12 01:14:02 +00:00
Marius Vollmer
036482e9cd *** empty log message *** 2005-08-11 21:04:31 +00:00
Marius Vollmer
3a1b45fdf7 Use scm_from_bool instead of SCM_BOOL. Thanks to Peter Gavin! 2005-08-11 21:03:58 +00:00
Kevin Ryde
bc721aa21d *** empty log message *** 2005-08-06 01:49:43 +00:00
Kevin Ryde
3540b91548 (scm_string_any, scm_string_every, scm_string_tabulate,
scm_string_trim, scm_string_trim_right, scm_string_trim_both,
scm_string_index, scm_string_index_right, scm_string_skip,
scm_string_skip_right, scm_string_count, scm_string_map,
scm_string_map_x, scm_string_for_each, scm_string_for_each_index,
scm_string_filter, scm_string_delete): Use scm_t_trampoline_1 for
procedures called in loops.
2005-08-06 01:44:30 +00:00
Kevin Ryde
126c81dbb4 *** empty log message *** 2005-08-02 00:12:09 +00:00
Kevin Ryde
bf5ad0dac5 (st_flush): Increase buffer by 1.5x when growing, to
avoid lots of copying where previoulsy growing by only 80 bytes at a
time.
2005-08-02 00:03:01 +00:00
Marius Vollmer
7f278dc67a *** empty log message *** 2005-07-31 23:37:03 +00:00
Marius Vollmer
fc95d019cc (scm_eval_closure_module): Removed, we already have
scm_lookup_closure_module, which does the same thing.
2005-07-31 23:36:14 +00:00
Marius Vollmer
930888e8e8 *** empty log message *** 2005-07-31 23:16:59 +00:00
Marius Vollmer
cb5c4b0722 *** empty log message *** 2005-07-31 23:05:00 +00:00
Marius Vollmer
06c1d90009 * gc-mark.c (scm_mark_all): Do not rely on hooks to run the weak
hashtable and guardian machinery but call the relevant functions
directly.

* guardians.h, guardians.c, deprecated.h,
deprecated.c (scm_destroy_guardian_x, scm_guardian_greedy_p,
scm_guardian_destroyed_p, scm_guard, scm_get_one_zombie):
Deprecated and moved into deprecated.[ch].

* guardians.h, guardians.c: Mostly rewritten.
(scm_i_init_guardians_for_gc,
scm_i_identify_inaccessible_guardeds,
scm_i_mark_inaccessible_guardeds): New.

* weaks.h, weaks.c (SCM_I_WVECT_TYPE, SCM_I_SET_WVECT_TYPE): New.
(SCM_I_WVECT_N_ITEMS, SCM_I_SET_WVECT_N_ITEMS): New.
(SCM_WVECTF_NOSCAN, SCM_WVECT_NOSCAN_P): Removed.
(scm_weaks_prehistory): Removed.
(scm_i_init_weak_vectors_for_gc, scm_i_mark_weak_vector,
scm_i_mark_weak_vectors_non_weaks,
scm_i_remove_weaks_from_weak_vectors, scm_i_remove_weaks): New.
(scm_weak_vector_gc_init, scm_mark_weak_vector_spines,
scm_scan_weak_vectors): Removed.

* hashtab.h (scm_i_scan_weak_hashtables): New.
* hashtab.c (make_hash_table, scm_i_rehash): Do not use
SCM_WVECTF_NOSCAN.
(hashtable_print): Use SCM_HASHTABLE_N_ITEMS instead of
t->n_items.
(scan_weak_hashtables, scm_i_scan_weak_hashtables): Renamed former
to latter.  Do not scan the alists themselves, this is done by the
weak vector code now.  Just update the element count.

* vectors.h (SCM_I_WVECT_TYPE, SCM_I_WVECT_EXTRA): Renamed former
to latter.  The type is now only part of the cell word.
(SCM_I_SET_WVECT_TYPE, SCM_I_SET_WVECT_EXTRA): Likewise.

* init.c (scm_i_init_guile): Do not call scm_weaks_prehistory.
2005-07-31 23:04:36 +00:00
Mikael Djurfeldt
3e2073bd24 * gc.c (scm_gc_stats): Bugfix: Measure size of the type we are
mallocating for (unsigned long *bounds).

* hashtab.c (scm_i_rehash): Cast SCM_HASHTABLE_FLAGS (table) to
scm_t_bits before storing them in the type word.

* gc.c (tag_table_to_type_alist): Modified type of c_tag from
scm_t_bits to int.
2005-07-18 13:55:44 +00:00
Kevin Ryde
c3c97a34e7 (scm_dbg_make_iloc): Should be SCM_IFRAMEMAX and
SCM_IDISTMAX, and cast uints through scm_t_bits to make gcc happy.
Reported by Ken Raeburn.
2005-07-12 00:28:09 +00:00
Kevin Ryde
ea2c396807 Plain ascii quote char. 2005-07-12 00:26:04 +00:00
Kevin Ryde
e8ac8e7583 *** empty log message *** 2005-07-12 00:11:52 +00:00
Kevin Ryde
8591234398 (scm_string_filter, scm_string_delete): Strip leading and
trailing deletions, so as to return a substring if those are the only
changes.
2005-07-11 23:59:57 +00:00
Kevin Ryde
f71e4d8c09 (scm_dbg_gc_get_bvec): Change return from long* to
scm_t_c_bvec_long*, gcc 4 doesn't like different pointer targets when
returning SCM_GC_CARD_BVEC.
2005-07-11 23:57:50 +00:00
Kevin Ryde
f32632e6cd (scm_error_pair_access): Plain ascii ' in error message
rather than latin-1 acute accent, the latter may not print on all
terminals.
2005-07-11 23:55:17 +00:00
Kevin Ryde
9d5dc023b4 (scm_error_pair_access): Use scm_from_locale_string rather
than scm_makfrom0str.
Reported by Ken Raeburn.
2005-07-11 23:50:45 +00:00
Kevin Ryde
adc0677d60 *** empty log message *** 2005-07-11 00:13:36 +00:00
Kevin Ryde
5ee417fc83 (scm_inet_pton, scm_inet_ntop): Pointer cast to scm_t_uint8
for scm ipv6 funcs, gcc 4 is picky about char* vs uchar*.
(scm_getsockopt, scm_accept, scm_getsockname, scm_getpeername,
scm_recvfrom) Use socklen_t, gcc 4 is picky about int* vs socklen_t*.
2005-07-10 01:56:07 +00:00
Han-Wen Nienhuys
8fecbb1900 * gc-card.c (scm_i_card_statistics): init tag.
* gc.c (tag_table_to_type_alist): check type of tag. Should be integer.
2005-07-01 12:34:58 +00:00
Han-Wen Nienhuys
fc9c5d0684 *** empty log message *** 2005-06-26 23:25:18 +00:00
Kevin Ryde
08fce816cb *** empty log message *** 2005-06-24 21:54:15 +00:00
Kevin Ryde
8230ee411d (scm_string_filter, scm_string_delete): Partial revert
last change, use plain copy-on-write substrings, the individual
descriptions in the srfi don't mention shared storage (only the
introduction does).
2005-06-24 21:53:10 +00:00
Kevin Ryde
48ddf0d9a9 (scm_take_locale_stringn): Use realloc to make room for
null-terminator, rather than mallocing a whole new block.
(scm_take_locale_string): Use scm_take_locale_stringn len==-1.
2005-06-24 21:43:36 +00:00
Marius Vollmer
12097c77c0 *** empty log message *** 2005-06-12 16:16:37 +00:00
Marius Vollmer
fab07c3048 (scm_array_index_map_x): First test for real arrays,
then check for generalized vectors.  This ensures that the
generalized vector case need only work with zero-origin ranges.
(scm_ra_eqp, scm_ra_compare): Use the new array handle functions
to access the target array, making these functions work with all
kinds of arrays, not just bit arrays.
2005-06-12 14:13:37 +00:00
Marius Vollmer
e3da8a3007 *** empty log message *** 2005-06-12 12:53:40 +00:00
Marius Vollmer
5ead53fc4e (scm_array_index_map_x): First test for real arrays,
then check for generalized vectors.  This ensures that the
generalized vector case need only work with zero-origin ranges.
2005-06-12 12:52:59 +00:00
Marius Vollmer
fc4abd0e6a *** empty log message *** 2005-06-12 12:35:35 +00:00
Marius Vollmer
5c56ebe15b Deprecated everything. 2005-06-12 12:34:52 +00:00
Marius Vollmer
9b26d381c1 (environment_default_folder,
environment_default_observer): Do not use gh_call3, gh_call1.
2005-06-12 12:33:01 +00:00