Kevin Ryde
93b047f413
(scm_fill_sockaddr): Use HAVE_STRUCT_SOCKADDR_SIN_LEN and
...
HAVE_STRUCT_SOCKADDR_IN6_SIN6_LEN for sockaddr fields, SIN_LEN and
SIN_LEN6 are not defined on all systems. Reported by Michael Tuexen.
2004-08-27 01:06:50 +00:00
Marius Vollmer
57aa5515c2
*** empty log message ***
2004-08-26 15:40:25 +00:00
Marius Vollmer
6869328b3b
* strings.h, strings.c (scm_i_make_symbol): Added FLAGS parameter.
...
* symbols.h, symbols.c (SCM_I_F_SYMBOL_UNINTERNED,
scm_i_symbol_is_interned, scm_i_mem2symbol,
scm_i_mem2uninternedsymbol): Use it to store uninternedness flag.
2004-08-26 15:40:13 +00:00
Marius Vollmer
19ff6ffc06
*** empty log message ***
2004-08-25 16:04:30 +00:00
Marius Vollmer
3731fc6718
* srfi-13.c: First cut at thread-safeness and proper use of
...
scm_i_string_chars et al. Copious scm_remember_upto_heres have
been inserted. Made sure that no internal string pointer is used
across a SCM_TICK or a possible GC.
2004-08-25 16:04:09 +00:00
Marius Vollmer
ce25760f07
*** empty log message ***
2004-08-25 13:49:48 +00:00
Marius Vollmer
7311b3e838
(scm_compile_shell_switches): Use scm_from_locale_string instead of
...
scm_makfrom0str.
2004-08-25 13:47:52 +00:00
Marius Vollmer
2562032b61
(scm_string_rindex): Export to Scheme, as it has always been.
2004-08-25 13:42:04 +00:00
Marius Vollmer
c5080b5189
*** empty log message ***
2004-08-24 22:25:02 +00:00
Marius Vollmer
1206efbe07
* symbols.h, symbols.c (scm_string_ci_to_symbol): Moved here, next
...
to scm_string_to_symbol.
* deprecated.c, load.c, posix.c, unif.c, symbols.c: Include
"srfi-13.h" instead of "strop.h".
2004-08-24 22:13:27 +00:00
Marius Vollmer
2c0b7c1fa0
(scm_string_equal_p, scm_string_ci_equal_p, scm_string_less_p,
...
scm_string_leq_p, scm_string_gr_p, scm_string_geq_p,
scm_string_ci_less_p, scm_string_ci_leq_p, scm_string_ci_gr_p,
scm_string_ci_geq_p): Use scm_string_eq, etc instead of explicit code.
2004-08-24 22:13:14 +00:00
Marius Vollmer
ad45f6b325
(scm_init_guile_1): Call scm_init_srfi_13 and scm_init_srfi_14. Do
...
not call scm_init_strop.
2004-08-24 22:13:07 +00:00
Marius Vollmer
1fdbbd4cd6
(scm_char_alphabetic_p, scm_char_numeric_p, scm_char_whitespace_p,
...
scm_upper_case_p, scm_lower_case_p, scm_char_is_both_p): Use
scm_char_set_contains_p with the proper charset instead of libc
functions.
2004-08-24 22:12:59 +00:00
Marius Vollmer
c44ca4fe75
Include "srfi-13.h" instead of "strop.h".
2004-08-24 22:12:37 +00:00
Marius Vollmer
63181a97f5
* srfi-13.c, srfi-13.h, srfi-14.c, srfi-14.h: New files.
...
* strop.h, strop.c: Removed, they are now empty.
* Makefile.am: Updated for new and removed files.
2004-08-24 22:12:08 +00:00
Marius Vollmer
4b0d27f266
*** empty log message ***
2004-08-24 16:44:00 +00:00
Marius Vollmer
b1092b3aaf
(scm_inf_p): Synced docstring back from manual.
2004-08-24 16:43:50 +00:00
Marius Vollmer
3ece39d651
*** empty log message ***
2004-08-22 19:31:32 +00:00
Marius Vollmer
e1b29f6a58
(get_str_buf_start): New helper function.
...
(scm_i_substring, scm_i_substring_copy, scm_i_substring_shared,
scm_i_string_char, scm_i_string_writable_chars): Use it.
(scm_i_substring_copy): Make START argument optional for C
callers, for upcoming SRFI-13 integration.
2004-08-22 19:29:19 +00:00
Marius Vollmer
caa29067e7
(scm_compile_shell_switches): added '-L' switch to add to the
...
%load-path.
2004-08-22 19:25:51 +00:00
Kevin Ryde
ae0b6bf5df
Move variables to avoid c99-isms in recent:
...
(scm_try_arbiter, scm_release_arbiter): Use FETCH_STORE ...
Noticed by Andreas Vögele.
2004-08-22 01:49:10 +00:00
Dirk Herrmann
5fa0939ce5
* eval.c (unmemoize_exprs): When dropping internal body markers
...
from the output during unmemoization, also drop those that are not
immediately at the beginning of a body.
2004-08-21 07:28:16 +00:00
Marius Vollmer
c1f54b3dda
*** empty log message ***
2004-08-20 13:33:39 +00:00
Marius Vollmer
a03bad878b
(scm_lookupcar1): Report "Variable used before given a value" insetad
...
of an "Unbound" one for variables that are found but still contain
SCM_UNDEFINED.
2004-08-20 13:33:28 +00:00
Marius Vollmer
2146fdebd8
*** empty log message ***
2004-08-20 12:27:11 +00:00
Marius Vollmer
2d0c133f92
(scm_lookupcar1): Report an "Undefined variable" insetad of an
...
"Unbound" one for variables that are found but still contain
SCM_UNDEFINED.
2004-08-20 12:26:46 +00:00
Marius Vollmer
892065da6c
(scm_mkstemp): Correction to the correction, mkstemp expects a
...
null-terminated string in the locale encoding, but
scm_i_string_writable_chars doesn't give that. Fixed by letting
mkstemp modify a locale version of the tmpl argument and copying the
result back into tmpl.
2004-08-20 12:25:20 +00:00
Marius Vollmer
a54264f04e
(scm_substring_move_x): Store into str2, not str1.
2004-08-20 12:25:09 +00:00
Kevin Ryde
d4f76919e6
*** empty log message ***
2004-08-20 01:35:44 +00:00
Kevin Ryde
71978ac9f6
(scm_mkstemp): Correction to new locale_string stuff, need
...
to modify the input string.
2004-08-20 01:32:36 +00:00
Marius Vollmer
b5247a6ba8
*** empty log message ***
2004-08-19 20:40:16 +00:00
Marius Vollmer
ba16a103a4
(SCM_SYMBOL_CHARS): Cast away const in return.
...
(SCM_SYMBOL_LENGTH): It's scm_i_symbol_length, not
scm_c_symbol_length.
2004-08-19 20:36:29 +00:00
Marius Vollmer
ece721f031
Added comment about future improvements...
2004-08-19 20:34:58 +00:00
Marius Vollmer
cd505b38ad
*** empty log message ***
2004-08-19 18:41:17 +00:00
Marius Vollmer
d6a1cb3cc6
(scm_string_copy): Use scm_c_substring to get a copy-on-write string.
2004-08-19 18:41:05 +00:00
Marius Vollmer
f26b939545
*** empty log message ***
2004-08-19 17:22:35 +00:00
Marius Vollmer
cc95e00ac6
* strings.h, strings.c: (scm_i_string_chars, scm_i_string_length,
...
scm_i_string_writable_chars, scm_i_string_stop_writing): New, to
replace SCM_I_STRING_CHARS and SCM_I_STRING_LENGTH. Updated all
uses.
(scm_i_make_string, scm_c_make_string): New, to replace
scm_allocate_string. Updated all uses.
(SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_UCHARS,
SCM_STRING_LENGTH): Deprecated.
(scm_allocate_string, scm_take_str, scm_take0str, scm_mem2string,
scm_str2string, scm_makfrom0str, scm_makfrom0str_opt):
Discouraged. Replaced all uses with scm_from_locale_string or
similar, as appropriate.
(scm_c_string_length, scm_c_string_ref, scm_c_string_set_x,
scm_c_substring, scm_c_substring_shared, scm_c_substring_copy,
scm_substring_shared, scm_substring_copy): New.
* symbols.c, symbols.h (SCM_SYMBOLP, SCM_SYMBOL_FUNC,
SCM_SET_SYMBOL_FUNC, SCM_SYMBOL_PROPS, SCM_SET_SYMBOL_PROPS,
SCM_SYMBOL_HASH, SCM_SYMBOL_INTERNED_P, scm_mem2symbol,
scm_str2symbol, scm_mem2uninterned_symbol): Discouraged.
(SCM_SYMBOL_LENGTH, SCM_SYMBOL_CHARS, scm_c_symbol2str):
Deprecated.
(SCM_MAKE_SYMBOL_TAG, SCM_SET_SYMBOL_LENGTH, SCM_SET_SYMBOL_CHARS,
SCM_PROP_SLOTS, SCM_SET_PROP_SLOTS): Removed.
(scm_is_symbol, scm_from_locale_symbol, scm_from_locale_symboln):
New, to replace scm_str2symbol and scm_mem2symbol, respectively.
Updated all uses.
(scm_gensym): Generate only the number suffix in the buffer, just
string-append the prefix.
2004-08-19 17:19:44 +00:00
Marius Vollmer
f76c6bb234
(gh_set_substr): Made src const.
...
* strings.h, strings.c: (scm_i_string_chars, scm_i_string_length,
scm_i_string_writable_chars, scm_i_string_stop_writing): New, to
replace SCM_I_STRING_CHARS and SCM_I_STRING_LENGTH. Updated all
uses.
(scm_i_make_string, scm_c_make_string): New, to replace
scm_allocate_string. Updated all uses.
(SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_UCHARS,
SCM_STRING_LENGTH): Deprecated.
(scm_allocate_string, scm_take_str, scm_take0str, scm_mem2string,
scm_str2string, scm_makfrom0str, scm_makfrom0str_opt):
Discouraged. Replaced all uses with scm_from_locale_string or
similar, as appropriate.
(scm_c_string_length, scm_c_string_ref, scm_c_string_set_x,
scm_c_substring, scm_c_substring_shared, scm_c_substring_copy,
scm_substring_shared, scm_substring_copy): New.
* symbols.c, symbols.h (SCM_SYMBOLP, SCM_SYMBOL_FUNC,
SCM_SET_SYMBOL_FUNC, SCM_SYMBOL_PROPS, SCM_SET_SYMBOL_PROPS,
SCM_SYMBOL_HASH, SCM_SYMBOL_INTERNED_P, scm_mem2symbol,
scm_str2symbol, scm_mem2uninterned_symbol): Discouraged.
(SCM_SYMBOL_LENGTH, SCM_SYMBOL_CHARS, scm_c_symbol2str):
Deprecated.
(SCM_MAKE_SYMBOL_TAG, SCM_SET_SYMBOL_LENGTH, SCM_SET_SYMBOL_CHARS,
SCM_PROP_SLOTS, SCM_SET_PROP_SLOTS): Removed.
(scm_is_symbol, scm_from_locale_symbol, scm_from_locale_symboln):
New, to replace scm_str2symbol and scm_mem2symbol, respectively.
Updated all uses.
(scm_gensym): Generate only the number suffix in the buffer, just
string-append the prefix.
2004-08-19 17:18:25 +00:00
Marius Vollmer
272632a67c
(scm_i_casei_streq): New, for counted strings.
...
* strings.h, strings.c: (scm_i_string_chars, scm_i_string_length,
scm_i_string_writable_chars, scm_i_string_stop_writing): New, to
replace SCM_I_STRING_CHARS and SCM_I_STRING_LENGTH. Updated all
uses.
(scm_i_make_string, scm_c_make_string): New, to replace
scm_allocate_string. Updated all uses.
(SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_UCHARS,
SCM_STRING_LENGTH): Deprecated.
(scm_allocate_string, scm_take_str, scm_take0str, scm_mem2string,
scm_str2string, scm_makfrom0str, scm_makfrom0str_opt):
Discouraged. Replaced all uses with scm_from_locale_string or
similar, as appropriate.
(scm_c_string_length, scm_c_string_ref, scm_c_string_set_x,
scm_c_substring, scm_c_substring_shared, scm_c_substring_copy,
scm_substring_shared, scm_substring_copy): New.
* symbols.c, symbols.h (SCM_SYMBOLP, SCM_SYMBOL_FUNC,
SCM_SET_SYMBOL_FUNC, SCM_SYMBOL_PROPS, SCM_SET_SYMBOL_PROPS,
SCM_SYMBOL_HASH, SCM_SYMBOL_INTERNED_P, scm_mem2symbol,
scm_str2symbol, scm_mem2uninterned_symbol): Discouraged.
(SCM_SYMBOL_LENGTH, SCM_SYMBOL_CHARS, scm_c_symbol2str):
Deprecated.
(SCM_MAKE_SYMBOL_TAG, SCM_SET_SYMBOL_LENGTH, SCM_SET_SYMBOL_CHARS,
SCM_PROP_SLOTS, SCM_SET_PROP_SLOTS): Removed.
(scm_is_symbol, scm_from_locale_symbol, scm_from_locale_symboln):
New, to replace scm_str2symbol and scm_mem2symbol, respectively.
Updated all uses.
(scm_gensym): Generate only the number suffix in the buffer, just
string-append the prefix.
2004-08-19 17:17:43 +00:00
Marius Vollmer
3a5fb14dbc
(scm_i_mode_bits_n): New, for counted strings.
...
(scm_mode_bits): Use it.
(scm_c_port_for_each): Blocking GC does not seem to work, allocate
a vector normally and fill that instead of consing a list with a
blocked GC.
* strings.h, strings.c: (scm_i_string_chars, scm_i_string_length,
scm_i_string_writable_chars, scm_i_string_stop_writing): New, to
replace SCM_I_STRING_CHARS and SCM_I_STRING_LENGTH. Updated all
uses.
(scm_i_make_string, scm_c_make_string): New, to replace
scm_allocate_string. Updated all uses.
(SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_UCHARS,
SCM_STRING_LENGTH): Deprecated.
(scm_allocate_string, scm_take_str, scm_take0str, scm_mem2string,
scm_str2string, scm_makfrom0str, scm_makfrom0str_opt):
Discouraged. Replaced all uses with scm_from_locale_string or
similar, as appropriate.
(scm_c_string_length, scm_c_string_ref, scm_c_string_set_x,
scm_c_substring, scm_c_substring_shared, scm_c_substring_copy,
scm_substring_shared, scm_substring_copy): New.
* symbols.c, symbols.h (SCM_SYMBOLP, SCM_SYMBOL_FUNC,
SCM_SET_SYMBOL_FUNC, SCM_SYMBOL_PROPS, SCM_SET_SYMBOL_PROPS,
SCM_SYMBOL_HASH, SCM_SYMBOL_INTERNED_P, scm_mem2symbol,
scm_str2symbol, scm_mem2uninterned_symbol): Discouraged.
(SCM_SYMBOL_LENGTH, SCM_SYMBOL_CHARS, scm_c_symbol2str):
Deprecated.
(SCM_MAKE_SYMBOL_TAG, SCM_SET_SYMBOL_LENGTH, SCM_SET_SYMBOL_CHARS,
SCM_PROP_SLOTS, SCM_SET_PROP_SLOTS): Removed.
(scm_is_symbol, scm_from_locale_symbol, scm_from_locale_symboln):
New, to replace scm_str2symbol and scm_mem2symbol, respectively.
Updated all uses.
(scm_gensym): Generate only the number suffix in the buffer, just
string-append the prefix.
2004-08-19 17:17:22 +00:00
Marius Vollmer
468e87a786
(scm_memory_error): Do not try to throw, just abort.
...
Throwing will not work anyway.
* strings.h, strings.c: (scm_i_string_chars, scm_i_string_length,
scm_i_string_writable_chars, scm_i_string_stop_writing): New, to
replace SCM_I_STRING_CHARS and SCM_I_STRING_LENGTH. Updated all
uses.
(scm_i_make_string, scm_c_make_string): New, to replace
scm_allocate_string. Updated all uses.
(SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_UCHARS,
SCM_STRING_LENGTH): Deprecated.
(scm_allocate_string, scm_take_str, scm_take0str, scm_mem2string,
scm_str2string, scm_makfrom0str, scm_makfrom0str_opt):
Discouraged. Replaced all uses with scm_from_locale_string or
similar, as appropriate.
(scm_c_string_length, scm_c_string_ref, scm_c_string_set_x,
scm_c_substring, scm_c_substring_shared, scm_c_substring_copy,
scm_substring_shared, scm_substring_copy): New.
* symbols.c, symbols.h (SCM_SYMBOLP, SCM_SYMBOL_FUNC,
SCM_SET_SYMBOL_FUNC, SCM_SYMBOL_PROPS, SCM_SET_SYMBOL_PROPS,
SCM_SYMBOL_HASH, SCM_SYMBOL_INTERNED_P, scm_mem2symbol,
scm_str2symbol, scm_mem2uninterned_symbol): Discouraged.
(SCM_SYMBOL_LENGTH, SCM_SYMBOL_CHARS, scm_c_symbol2str):
Deprecated.
(SCM_MAKE_SYMBOL_TAG, SCM_SET_SYMBOL_LENGTH, SCM_SET_SYMBOL_CHARS,
SCM_PROP_SLOTS, SCM_SET_PROP_SLOTS): Removed.
(scm_is_symbol, scm_from_locale_symbol, scm_from_locale_symboln):
New, to replace scm_str2symbol and scm_mem2symbol, respectively.
Updated all uses.
(scm_gensym): Generate only the number suffix in the buffer, just
string-append the prefix.
2004-08-19 17:16:49 +00:00
Marius Vollmer
6087fad9c7
(gc_section_count): Removed, thread-sleeping can not
...
be nested.
(scm_i_thread_put_to_sleep): Call scm_i_leave_guile before locking
admin mutex so that we can be put to sleep by other threads while
blocking on that mutex. Lock all the heap mutex of all threads,
including ourselves.
(scm_i_thread_wake_up): Unlock all threads, including ourselves,
call scm_i_enter_guile.
(scm_thread_mark_stacks): Expect all threads to be suspended.
2004-08-19 17:16:01 +00:00
Marius Vollmer
3ee86942a7
* strings.h, strings.c: (scm_i_string_chars, scm_i_string_length,
...
scm_i_string_writable_chars, scm_i_string_stop_writing): New, to
replace SCM_I_STRING_CHARS and SCM_I_STRING_LENGTH. Updated all
uses.
(scm_i_make_string, scm_c_make_string): New, to replace
scm_allocate_string. Updated all uses.
(SCM_STRINGP, SCM_STRING_CHARS, SCM_STRING_UCHARS,
SCM_STRING_LENGTH): Deprecated.
(scm_allocate_string, scm_take_str, scm_take0str, scm_mem2string,
scm_str2string, scm_makfrom0str, scm_makfrom0str_opt):
Discouraged. Replaced all uses with scm_from_locale_string or
similar, as appropriate.
(scm_c_string_length, scm_c_string_ref, scm_c_string_set_x,
scm_c_substring, scm_c_substring_shared, scm_c_substring_copy,
scm_substring_shared, scm_substring_copy): New.
* symbols.c, symbols.h (SCM_SYMBOLP, SCM_SYMBOL_FUNC,
SCM_SET_SYMBOL_FUNC, SCM_SYMBOL_PROPS, SCM_SET_SYMBOL_PROPS,
SCM_SYMBOL_HASH, SCM_SYMBOL_INTERNED_P, scm_mem2symbol,
scm_str2symbol, scm_mem2uninterned_symbol): Discouraged.
(SCM_SYMBOL_LENGTH, SCM_SYMBOL_CHARS, scm_c_symbol2str):
Deprecated.
(SCM_MAKE_SYMBOL_TAG, SCM_SET_SYMBOL_LENGTH, SCM_SET_SYMBOL_CHARS,
SCM_PROP_SLOTS, SCM_SET_PROP_SLOTS): Removed.
(scm_is_symbol, scm_from_locale_symbol, scm_from_locale_symboln):
New, to replace scm_str2symbol and scm_mem2symbol, respectively.
Updated all uses.
(scm_gensym): Generate only the number suffix in the buffer, just
string-append the prefix.
2004-08-19 16:49:42 +00:00
Marius Vollmer
eb01cb6494
* gc.h, gc.c (scm_i_gc_admin_mutex): New, to protect
...
scm_gc_mallocated, for now.
(scm_init_storage): Initialize it.
* gc-malloc.c (descrease_mtrigger, increase_mtrigger): Use it.
* gc-mark.c (scm_gc_mark_dependencies): Call scm_i_string_mark,
scm_i_stringbuf_mark and scm_i_symbol_mark, as appropriate.
* gc-card.c (scm_i_sweep_card): Call scm_i_string_free,
scm_i_stringbuf_free and scm_i_symbol_free, as appropriate.
2004-08-19 16:48:38 +00:00
Marius Vollmer
fddf60002a
(scm_tc7_stringbuf): New tag.
2004-08-19 16:41:30 +00:00
Kevin Ryde
1f3cc0d312
*** empty log message ***
2004-08-17 23:57:01 +00:00
Kevin Ryde
d6cd4c3601
*** empty log message ***
2004-08-17 23:53:07 +00:00
Kevin Ryde
6f637a1bc0
(scm_init_socket): Add SOCK_SEQPACKET and SOCK_RDM.
2004-08-17 23:44:25 +00:00
Kevin Ryde
8a807b26c3
*** empty log message ***
2004-08-17 23:28:16 +00:00
Kevin Ryde
eb37258527
(fport_print): Use scm_ttyname instead of ttyname directly,
...
to get thread safety of scm_ttyname.
2004-08-17 23:27:11 +00:00