* threads.h (scm_single_thread_p, scm_yield,
scm_call_with_new_thread, scm_join_thread, scm_make_mutex,
scm_lock_mutex, scm_unlock_mutex, scm_make_condition_variable,
scm_wait_condition_variable, scm_signal_condition_variable): Add
prototypes for these Scheme-visible functions.
* coop-defs.h (coop_next_runnable_thread,
coop_wait_for_runnable_thread_now, coop_wait_for_runnable_thread):
Prototypes for these here, even though they're from iselect.c.
(coop_condition_variable_wait, coop_join): Add prototypes.
* coop-threads.c (scm_threads_free_thread, scm_threads_free_mutex,
scm_threads_free_condvar): Make these smob functions static.
* coop-threads.h (coop_init): Give this a real prototype.
* coop.c: #include <unistd.h>, if we have it, for `usleep' and `sleep'.
(coop_next_runnable_thread): No need to provide prototype; it's in
coop-defs.h.
warning. (Thanks to Robert Pluim.)
* inet_aton.c (inet_aton): Reassure the compiler that the
arguments to the <ctype.h> macros are all unsigned characters, not
signed characters.
(rl_cleanup_after_signal, rl_free_line_state): Make these static.
* readline.h (scm_filename_completion_function): Add prototype.
(scm_init_readline): Make this into a prototype.
(rl_cleanup_after_signal, rl_free_line_state): Make these static.
* readline.h (scm_filename_completion_function): Add prototype.
(scm_init_readline): Make this into a prototype.
* readline.c (scm_filename_completion_function): Use SCM_PROC to
declare this, instead of calling scm_make_subr manually.
* iselect.c: Test for MISSING_BZERO_DECL, not DECLARE_BZERO; see
today's change to ../configure.in.
* scmsigs.c: Test for MISSING_USLEEP_DECL, not DECLARE_USLEEP.
* scmconfig.h.in: Regenertaded.de.,.__
* stime.c (strptime): Declare this, #ifdef MISSING_STRPTIME_DECL.
(scm_localtime, scm_mktime): Use a const char * to manipulate the
time zone name.
these are analogous to SCM_VCELL and SCM_GLOBAL_VCELL but take a
third argument, a C expression that should result in a SCM value,
which is used to initialize the variable. Reimplemented
SCM_CONST_LONG in terms of SCM_VCELL_INIT. (Thanks to Maciej
Stachowiak.)
several places, declare a fresh i local to each block where it is
used, and give it a signedness appropriate to its use in each case.
(scm_iprlist): Same.
* print.c (scm_iprin1): Add cast to avoid unsigned/signed
comparison warnings.
* print.c (ENTER_NESTED_DATA): Make i an unsigned long, to avoid
signed/unsigned clashes.
comparison is okay here.
* numbers.c (scm_istr2int): Add cast; len is known to be positive.
* numbers.c (scm_bigcomp): Clarify logic, and avoid relying on the
(true, but confusing) fact that -1 == ((unsigned) 0 - 1).
* numbers.c (scm_adjbig): Make nsiz an scm_sizet, to avoid mixing
signed/unsigned.
* load.c (scm_search_path): Make max_path_len and max_ext_len
unsigned, since they're compared against string sizes.
* load.c (init_build_info): Make i unsigned.
debugging support unconditionally. That's backtrace.c, stack.c,
debug.c, and srcprop.c.
(EXTRA_libguile_la_SOURCES): Omit those from here.
* Makefile.in: Regenerated.
* gc.c (scm_mtrigger, scm_heap_size): Make these unsigned longs.
(scm_gc_sweep): Make n and j local to the blocks they're used in,
so they can have appropriate types for each application. Make i
signed. Use initializers in some spots. I'll probably pay for
all this tweaking.
(scm_must_malloc, scm_must_realloc): Use scm_sizet for size args.
(scm_must_realloc): Make nm unsigned.
(init_heap_seg): Make new_seg_index and n_new_objects signed.
(scm_init_storage): Use prototype-style definition, and make the
argument unsigned.
* gc.h (scm_heap_size, scm_mtrigger, scm_must_malloc,
scm_must_realloc, scm_init_storage): Adjust prototype accordingly.
avoid signed/unsigned comparison warnings, and because the return
value of readlink may be -1. Don't bother casting the third
argument to readlink.
* filesys.c (scm_dirname, scm_basename): Move these to their own
page, at the end of the file.
* filesys.h (scm_dirname, scm_basename): Add prototypes for these.
whose reason for existence is explained in no documentation or
comment. I think it's there as a default for some Tcl-style
initialization, but Tcl abandoned that approach a while ago.
* Makefile.am (libguile_la_SOURCES): Remove appinit.c.
(BUILT_SOURCES): Remove appinit.x.
* Makefile.in: Regenerated.