From 102dbb6f6ccf69badcb2215259d755136b19fe89 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ludovic=20Court=C3=A8s?= Date: Wed, 14 May 2008 05:20:47 +0200 Subject: [PATCH] Add `SCM_INTERNAL' macro, use it. --- libguile/ChangeLog | 7 +++ libguile/__scm.h | 9 ++++ libguile/alist.h | 4 +- libguile/arbiters.h | 4 +- libguile/async.h | 13 +++--- libguile/backtrace.h | 7 +-- libguile/boolean.h | 4 +- libguile/chars.h | 4 +- libguile/continuations.h | 17 +++---- libguile/coop-pthreads.h | 4 +- libguile/debug-malloc.h | 6 +-- libguile/debug.h | 6 +-- libguile/deprecation.h | 4 +- libguile/dynl.h | 4 +- libguile/dynwind.h | 8 ++-- libguile/environments.h | 6 +-- libguile/eq.h | 4 +- libguile/error.h | 4 +- libguile/eval.h | 18 ++++---- libguile/evalext.h | 4 +- libguile/extensions.h | 4 +- libguile/feature.h | 4 +- libguile/filesys.h | 4 +- libguile/fluids.h | 8 ++-- libguile/fports.h | 10 ++--- libguile/futures.h | 4 +- libguile/gc.h | 10 ++--- libguile/gdbint.h | 4 +- libguile/gettext.h | 6 +-- libguile/goops.h | 9 ++-- libguile/gsubr.h | 4 +- libguile/guardians.h | 10 ++--- libguile/hash.h | 4 +- libguile/hashtab.h | 11 ++--- libguile/hooks.h | 4 +- libguile/i18n.h | 2 +- libguile/init.h | 6 +-- libguile/ioext.h | 4 +- libguile/keywords.h | 4 +- libguile/lang.h | 4 +- libguile/list.h | 6 +-- libguile/load.h | 6 +-- libguile/macros.h | 6 +-- libguile/mallocs.h | 4 +- libguile/modules.h | 6 +-- libguile/net_db.h | 4 +- libguile/numbers.h | 32 +++++++------- libguile/objects.h | 10 ++--- libguile/objprop.h | 4 +- libguile/options.h | 4 +- libguile/pairs.h | 2 +- libguile/ports.h | 14 +++--- libguile/posix.h | 6 +-- libguile/print.h | 6 +-- libguile/private-gc.h | 78 +++++++++++++++++++-------------- libguile/procprop.h | 6 +-- libguile/procs.h | 6 +-- libguile/properties.h | 4 +- libguile/ramap.h | 4 +- libguile/random.h | 10 ++--- libguile/rdelim.h | 4 +- libguile/read.h | 8 ++-- libguile/regex-posix.h | 4 +- libguile/root.h | 4 +- libguile/rw.h | 6 +-- libguile/scmsigs.h | 10 ++--- libguile/script.h | 4 +- libguile/simpos.h | 4 +- libguile/socket.h | 4 +- libguile/sort.h | 4 +- libguile/srcprop.h | 4 +- libguile/srfi-13.h | 6 +-- libguile/srfi-14.h | 6 +-- libguile/srfi-4.h | 12 ++--- libguile/stackchk.h | 4 +- libguile/stacks.h | 4 +- libguile/stime.h | 4 +- libguile/strings.h | 60 ++++++++++++------------- libguile/strorder.h | 4 +- libguile/strports.h | 4 +- libguile/struct.h | 8 ++-- libguile/symbols.h | 8 ++-- libguile/threads.h | 24 +++++----- libguile/throw.h | 4 +- libguile/unif.h | 10 ++--- libguile/values.h | 4 +- libguile/variable.h | 6 +-- libguile/vectors.h | 10 ++--- libguile/version.h.in | 4 +- libguile/vports.h | 4 +- libguile/weaks.h | 14 +++--- test-suite/ChangeLog | 5 +++ test-suite/standalone/test-gh.c | 2 +- 93 files changed, 385 insertions(+), 349 deletions(-) diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 5962f7e14..110b781fc 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,10 @@ +2008-05-31 Ludovic Courtès + + * __scm.h (SCM_INTERNAL): New macro. + * *.h: Use it to mark as internal `scm_i_' and `scm_init_' + functions that are not used by public macros or inline + functions. + 2008-05-14 Julian Graham * threads.c (fat_mutex)[recursive]: New field. diff --git a/libguile/__scm.h b/libguile/__scm.h index b198f9d6a..76b444857 100644 --- a/libguile/__scm.h +++ b/libguile/__scm.h @@ -97,6 +97,15 @@ #define SCM_LIKELY(_expr) SCM_EXPECT ((_expr), 1) #define SCM_UNLIKELY(_expr) SCM_EXPECT ((_expr), 0) +/* The SCM_INTERNAL macro makes it possible to explicitly declare a function + * as having "internal" linkage. */ +#if (defined __GNUC__) && \ + ((__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ == 3)) +# define SCM_INTERNAL __attribute__ ((__visibility__ ("internal"))) +#else +# define SCM_INTERNAL +#endif + /* {Supported Options} diff --git a/libguile/alist.h b/libguile/alist.h index 3d1784c7f..76cccba2b 100644 --- a/libguile/alist.h +++ b/libguile/alist.h @@ -3,7 +3,7 @@ #ifndef SCM_ALIST_H #define SCM_ALIST_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -42,7 +42,7 @@ SCM_API SCM scm_assoc_set_x (SCM alist, SCM key, SCM val); SCM_API SCM scm_assq_remove_x (SCM alist, SCM key); SCM_API SCM scm_assv_remove_x (SCM alist, SCM key); SCM_API SCM scm_assoc_remove_x (SCM alist, SCM key); -SCM_API void scm_init_alist (void); +SCM_INTERNAL void scm_init_alist (void); #endif /* SCM_ALIST_H */ diff --git a/libguile/arbiters.h b/libguile/arbiters.h index d04244926..7a7dfd3fa 100644 --- a/libguile/arbiters.h +++ b/libguile/arbiters.h @@ -3,7 +3,7 @@ #ifndef SCM_ARBITERS_H #define SCM_ARBITERS_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -29,7 +29,7 @@ SCM_API SCM scm_make_arbiter (SCM name); SCM_API SCM scm_try_arbiter (SCM arb); SCM_API SCM scm_release_arbiter (SCM arb); -SCM_API void scm_init_arbiters (void); +SCM_INTERNAL void scm_init_arbiters (void); #endif /* SCM_ARBITERS_H */ diff --git a/libguile/async.h b/libguile/async.h index a81a98d74..c01bde031 100644 --- a/libguile/async.h +++ b/libguile/async.h @@ -3,7 +3,7 @@ #ifndef SCM_ASYNC_H #define SCM_ASYNC_H -/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2004, 2005, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2004, 2005, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -38,10 +38,11 @@ SCM_API SCM scm_async (SCM thunk); SCM_API SCM scm_async_mark (SCM a); SCM_API SCM scm_system_async_mark (SCM a); SCM_API SCM scm_system_async_mark_for_thread (SCM a, SCM thread); -SCM_API void scm_i_queue_async_cell (SCM cell, scm_i_thread *); -SCM_API int scm_i_setup_sleep (scm_i_thread *, - SCM obj, scm_i_pthread_mutex_t *m, int fd); -SCM_API void scm_i_reset_sleep (scm_i_thread *); +SCM_INTERNAL void scm_i_queue_async_cell (SCM cell, scm_i_thread *); +SCM_INTERNAL int scm_i_setup_sleep (scm_i_thread *, + SCM obj, scm_i_pthread_mutex_t *m, + int fd); +SCM_INTERNAL void scm_i_reset_sleep (scm_i_thread *); SCM_API SCM scm_run_asyncs (SCM list_of_a); SCM_API SCM scm_noop (SCM args); SCM_API SCM scm_call_with_blocked_asyncs (SCM proc); @@ -77,7 +78,7 @@ extern int scm_i_critical_section_level; scm_async_click (); \ } while (0) -SCM_API void scm_init_async (void); +SCM_INTERNAL void scm_init_async (void); #if (SCM_ENABLE_DEPRECATED == 1) diff --git a/libguile/backtrace.h b/libguile/backtrace.h index b4033dede..e11cb85de 100644 --- a/libguile/backtrace.h +++ b/libguile/backtrace.h @@ -3,7 +3,7 @@ #ifndef SCM_BACKTRACE_H #define SCM_BACKTRACE_H -/* Copyright (C) 1996,1998,1999,2000,2001, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1996,1998,1999,2000,2001, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -27,7 +27,8 @@ SCM_API SCM scm_the_last_stack_fluid_var; SCM_API void scm_display_error_message (SCM message, SCM args, SCM port); -SCM_API void scm_i_display_error (SCM stack, SCM port, SCM subr, SCM message, SCM args, SCM rest); +SCM_INTERNAL void scm_i_display_error (SCM stack, SCM port, SCM subr, + SCM message, SCM args, SCM rest); SCM_API SCM scm_display_error (SCM stack, SCM port, SCM subr, SCM message, SCM args, SCM rest); SCM_API SCM scm_display_application (SCM frame, SCM port, SCM indent); SCM_API SCM scm_display_backtrace (SCM stack, SCM port, SCM first, SCM depth); @@ -38,7 +39,7 @@ SCM_API SCM scm_backtrace_with_highlights (SCM highlights); SCM_API SCM scm_set_print_params_x (SCM params); #endif -SCM_API void scm_init_backtrace (void); +SCM_INTERNAL void scm_init_backtrace (void); #endif /* SCM_BACKTRACE_H */ diff --git a/libguile/boolean.h b/libguile/boolean.h index 3dc82e1f6..1388c2fdc 100644 --- a/libguile/boolean.h +++ b/libguile/boolean.h @@ -3,7 +3,7 @@ #ifndef SCM_BOOLEAN_H #define SCM_BOOLEAN_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -43,7 +43,7 @@ SCM_API int scm_to_bool (SCM x); SCM_API SCM scm_not (SCM x); SCM_API SCM scm_boolean_p (SCM obj); -SCM_API void scm_init_boolean (void); +SCM_INTERNAL void scm_init_boolean (void); #endif /* SCM_BOOLEAN_H */ diff --git a/libguile/chars.h b/libguile/chars.h index 1a139e901..97c611af4 100644 --- a/libguile/chars.h +++ b/libguile/chars.h @@ -3,7 +3,7 @@ #ifndef SCM_CHARS_H #define SCM_CHARS_H -/* Copyright (C) 1995,1996,2000,2001,2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001,2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -62,7 +62,7 @@ SCM_API SCM scm_char_upcase (SCM chr); SCM_API SCM scm_char_downcase (SCM chr); SCM_API int scm_c_upcase (unsigned int c); SCM_API int scm_c_downcase (unsigned int c); -SCM_API void scm_init_chars (void); +SCM_INTERNAL void scm_init_chars (void); #endif /* SCM_CHARS_H */ diff --git a/libguile/continuations.h b/libguile/continuations.h index f6fb96aa2..1a648dd28 100644 --- a/libguile/continuations.h +++ b/libguile/continuations.h @@ -3,7 +3,7 @@ #ifndef SCM_CONTINUATIONS_H #define SCM_CONTINUATIONS_H -/* Copyright (C) 1995,1996,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -90,14 +90,15 @@ SCM_API SCM scm_make_continuation (int *first); SCM_API void *scm_c_with_continuation_barrier (void *(*func)(void*), void *); SCM_API SCM scm_with_continuation_barrier (SCM proc); -SCM_API SCM scm_i_with_continuation_barrier (scm_t_catch_body body, - void *body_data, - scm_t_catch_handler handler, - void *handler_data, - scm_t_catch_handler pre_unwind_handler, - void *pre_unwind_handler_data); +SCM_INTERNAL SCM +scm_i_with_continuation_barrier (scm_t_catch_body body, + void *body_data, + scm_t_catch_handler handler, + void *handler_data, + scm_t_catch_handler pre_unwind_handler, + void *pre_unwind_handler_data); -SCM_API void scm_init_continuations (void); +SCM_INTERNAL void scm_init_continuations (void); #endif /* SCM_CONTINUATIONS_H */ diff --git a/libguile/coop-pthreads.h b/libguile/coop-pthreads.h index 913487452..cc1f75a9b 100644 --- a/libguile/coop-pthreads.h +++ b/libguile/coop-pthreads.h @@ -3,7 +3,7 @@ #ifndef SCM_COOP_PTHREADS_H #define SCM_COOP_PTHREADS_H -/* Copyright (C) 2002, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -70,7 +70,7 @@ SCM_API int scm_i_switch_counter; #define SCM_SET_THREAD_LOCAL_DATA(ptr) (scm_i_copt_set_thread_data (ptr)) SCM_API void *scm_i_copt_thread_data; -SCM_API void scm_i_copt_set_thread_data (void *data); +SCM_INTERNAL void scm_i_copt_set_thread_data (void *data); #endif /* SCM_COOP_PTHREAD_H */ diff --git a/libguile/debug-malloc.h b/libguile/debug-malloc.h index 444f06d71..1aa5221c6 100644 --- a/libguile/debug-malloc.h +++ b/libguile/debug-malloc.h @@ -3,7 +3,7 @@ #ifndef SCM_DEBUG_MALLOC_H #define SCM_DEBUG_MALLOC_H -/* Copyright (C) 2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -32,8 +32,8 @@ SCM_API void scm_malloc_reregister (void *obj, void *new, const char *what); SCM_API SCM scm_malloc_stats (void); -SCM_API void scm_debug_malloc_prehistory (void); -SCM_API void scm_init_debug_malloc (void); +SCM_INTERNAL void scm_debug_malloc_prehistory (void); +SCM_INTERNAL void scm_init_debug_malloc (void); #endif /* SCM_DEBUG_MALLOC_H */ diff --git a/libguile/debug.h b/libguile/debug.h index 79afa4d53..607716230 100644 --- a/libguile/debug.h +++ b/libguile/debug.h @@ -3,7 +3,7 @@ #ifndef SCM_DEBUG_H #define SCM_DEBUG_H -/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2004 +/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2004,2008 * Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or @@ -150,8 +150,8 @@ SCM_API SCM scm_evaluator_traps (SCM setting); SCM_API SCM scm_debug_options (SCM setting); SCM_API SCM scm_make_debugobj (scm_t_debug_frame *debug); -SCM_API SCM scm_i_unmemoize_expr (SCM memoized); -SCM_API void scm_init_debug (void); +SCM_INTERNAL SCM scm_i_unmemoize_expr (SCM memoized); +SCM_INTERNAL void scm_init_debug (void); #ifdef GUILE_DEBUG SCM_API SCM scm_memcons (SCM car, SCM cdr, SCM env); diff --git a/libguile/deprecation.h b/libguile/deprecation.h index 53500eeca..78853277b 100644 --- a/libguile/deprecation.h +++ b/libguile/deprecation.h @@ -3,7 +3,7 @@ #ifndef SCM_DEPRECATION_H #define SCM_DEPRECATION_H -/* Copyright (C) 2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -41,7 +41,7 @@ SCM_API SCM scm_issue_deprecation_warning (SCM msgs); #endif SCM_API SCM scm_include_deprecated_features (void); -SCM_API void scm_init_deprecation (void); +SCM_INTERNAL void scm_init_deprecation (void); #endif /* SCM_DEPRECATION_H */ diff --git a/libguile/dynl.h b/libguile/dynl.h index 6936afd3d..72dc92ea4 100644 --- a/libguile/dynl.h +++ b/libguile/dynl.h @@ -3,7 +3,7 @@ #ifndef SCM_DYNL_H #define SCM_DYNL_H -/* Copyright (C) 1996,1998,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1996,1998,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -33,7 +33,7 @@ SCM_API SCM scm_dynamic_func (SCM symb, SCM dobj); SCM_API SCM scm_dynamic_call (SCM symb, SCM dobj); SCM_API SCM scm_dynamic_args_call (SCM symb, SCM dobj, SCM args); -SCM_API void scm_init_dynamic_linking (void); +SCM_INTERNAL void scm_init_dynamic_linking (void); #endif /* SCM_DYNL_H */ diff --git a/libguile/dynwind.h b/libguile/dynwind.h index 9e5390b10..dd39dae5a 100644 --- a/libguile/dynwind.h +++ b/libguile/dynwind.h @@ -3,7 +3,7 @@ #ifndef SCM_DYNWIND_H #define SCM_DYNWIND_H -/* Copyright (C) 1995,1996,1998,1999,2000,2003,2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,1999,2000,2003,2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -36,9 +36,9 @@ SCM_API SCM scm_internal_dynamic_wind (scm_t_guard before, void *inner_data, void *guard_data); SCM_API void scm_dowinds (SCM to, long delta); -SCM_API void scm_i_dowinds (SCM to, long delta, - void (*turn_func) (void *), void *data); -SCM_API void scm_init_dynwind (void); +SCM_INTERNAL void scm_i_dowinds (SCM to, long delta, + void (*turn_func) (void *), void *data); +SCM_INTERNAL void scm_init_dynwind (void); SCM_API void scm_swap_bindings (SCM vars, SCM vals); diff --git a/libguile/environments.h b/libguile/environments.h index dd698b7b5..10d42a704 100644 --- a/libguile/environments.h +++ b/libguile/environments.h @@ -3,7 +3,7 @@ #ifndef SCM_ENVIRONMENTS_H #define SCM_ENVIRONMENTS_H -/* Copyright (C) 1999,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1999,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -122,8 +122,8 @@ SCM_API SCM scm_environment_observe_weak (SCM env, SCM proc); SCM_API SCM scm_c_environment_observe (SCM env, scm_environment_observer proc, SCM data, int weak_p); SCM_API SCM scm_environment_unobserve (SCM token); -SCM_API void scm_environments_prehistory (void); -SCM_API void scm_init_environments (void); +SCM_INTERNAL void scm_environments_prehistory (void); +SCM_INTERNAL void scm_init_environments (void); diff --git a/libguile/eq.h b/libguile/eq.h index da5a71c9f..af6959fe8 100644 --- a/libguile/eq.h +++ b/libguile/eq.h @@ -3,7 +3,7 @@ #ifndef SCM_EQ_H #define SCM_EQ_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -29,7 +29,7 @@ SCM_API SCM scm_eq_p (SCM x, SCM y); SCM_API SCM scm_eqv_p (SCM x, SCM y); SCM_API SCM scm_equal_p (SCM x, SCM y); -SCM_API void scm_init_eq (void); +SCM_INTERNAL void scm_init_eq (void); #endif /* SCM_EQ_H */ diff --git a/libguile/error.h b/libguile/error.h index 7ba0c4b37..042fb4d14 100644 --- a/libguile/error.h +++ b/libguile/error.h @@ -3,7 +3,7 @@ #ifndef SCM_ERROR_H #define SCM_ERROR_H -/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2002, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -57,7 +57,7 @@ SCM_API void scm_wrong_type_arg_msg (const char *subr, int pos, SCM_API void scm_memory_error (const char *subr) SCM_NORETURN; SCM_API void scm_misc_error (const char *subr, const char *message, SCM args) SCM_NORETURN; -SCM_API void scm_init_error (void); +SCM_INTERNAL void scm_init_error (void); #endif /* SCM_ERROR_H */ diff --git a/libguile/eval.h b/libguile/eval.h index 247cf164e..bf6279b82 100644 --- a/libguile/eval.h +++ b/libguile/eval.h @@ -3,7 +3,7 @@ #ifndef SCM_EVAL_H #define SCM_EVAL_H -/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2003,2004 +/* Copyright (C) 1995,1996,1998,1999,2000,2001,2002,2003,2004,2008 * Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or @@ -152,7 +152,7 @@ SCM_API SCM scm_apply_0 (SCM proc, SCM args); SCM_API SCM scm_apply_1 (SCM proc, SCM arg1, SCM args); SCM_API SCM scm_apply_2 (SCM proc, SCM arg1, SCM arg2, SCM args); SCM_API SCM scm_apply_3 (SCM proc, SCM arg1, SCM arg2, SCM arg3, SCM args); -SCM_API SCM scm_i_call_closure_0 (SCM proc); +SCM_INTERNAL SCM scm_i_call_closure_0 (SCM proc); SCM_API scm_t_trampoline_0 scm_trampoline_0 (SCM proc); SCM_API scm_t_trampoline_1 scm_trampoline_1 (SCM proc); SCM_API scm_t_trampoline_2 scm_trampoline_2 (SCM proc); @@ -167,18 +167,18 @@ SCM_API SCM scm_force (SCM x); SCM_API SCM scm_promise_p (SCM x); SCM_API SCM scm_cons_source (SCM xorig, SCM x, SCM y); SCM_API SCM scm_copy_tree (SCM obj); -SCM_API SCM scm_i_eval_x (SCM exp, SCM env); -SCM_API SCM scm_i_eval (SCM exp, SCM env); +SCM_API SCM scm_i_eval_x (SCM exp, SCM env) /* not internal */; +SCM_INTERNAL SCM scm_i_eval (SCM exp, SCM env); SCM_API SCM scm_primitive_eval (SCM exp); SCM_API SCM scm_primitive_eval_x (SCM exp); SCM_API SCM scm_eval (SCM exp, SCM module); SCM_API SCM scm_eval_x (SCM exp, SCM module); -SCM_API void scm_i_print_iloc (SCM /*iloc*/, SCM /*port*/); -SCM_API void scm_i_print_isym (SCM /*isym*/, SCM /*port*/); -SCM_API SCM scm_i_unmemocopy_expr (SCM expr, SCM env); -SCM_API SCM scm_i_unmemocopy_body (SCM forms, SCM env); -SCM_API void scm_init_eval (void); +SCM_INTERNAL void scm_i_print_iloc (SCM /*iloc*/, SCM /*port*/); +SCM_INTERNAL void scm_i_print_isym (SCM /*isym*/, SCM /*port*/); +SCM_INTERNAL SCM scm_i_unmemocopy_expr (SCM expr, SCM env); +SCM_INTERNAL SCM scm_i_unmemocopy_body (SCM forms, SCM env); +SCM_INTERNAL void scm_init_eval (void); #if (SCM_ENABLE_DEPRECATED == 1) diff --git a/libguile/evalext.h b/libguile/evalext.h index e9b442e44..a6a4a9fdc 100644 --- a/libguile/evalext.h +++ b/libguile/evalext.h @@ -3,7 +3,7 @@ #ifndef SCM_EVALEXT_H #define SCM_EVALEXT_H -/* Copyright (C) 1998,1999,2000, 2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1998,1999,2000, 2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -28,7 +28,7 @@ SCM_API SCM scm_defined_p (SCM sym, SCM env); SCM_API SCM scm_self_evaluating_p (SCM obj); -SCM_API void scm_init_evalext (void); +SCM_INTERNAL void scm_init_evalext (void); #if (SCM_ENABLE_DEPRECATED == 1) diff --git a/libguile/extensions.h b/libguile/extensions.h index 294dcad76..596b43ae0 100644 --- a/libguile/extensions.h +++ b/libguile/extensions.h @@ -3,7 +3,7 @@ #ifndef SCM_EXTENSIONS_H #define SCM_EXTENSIONS_H -/* Copyright (C) 2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -32,7 +32,7 @@ SCM_API void scm_c_register_extension (const char *lib, const char *init, SCM_API void scm_c_load_extension (const char *lib, const char *init); SCM_API SCM scm_load_extension (SCM lib, SCM init); -SCM_API void scm_init_extensions (void); +SCM_INTERNAL void scm_init_extensions (void); #endif /* SCM_EXTENSIONS_H */ diff --git a/libguile/feature.h b/libguile/feature.h index 9c61f8ce8..8c6371e94 100644 --- a/libguile/feature.h +++ b/libguile/feature.h @@ -3,7 +3,7 @@ #ifndef SCM_FEATURE_H #define SCM_FEATURE_H -/* Copyright (C) 1995,1996,1999,2000,2001, 2006, 2007 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1999,2000,2001, 2006, 2007, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -28,7 +28,7 @@ SCM_API void scm_add_feature (const char* str); SCM_API SCM scm_program_arguments (void); SCM_API void scm_set_program_arguments (int argc, char **argv, char *first); SCM_API SCM scm_set_program_arguments_scm (SCM lst); -SCM_API void scm_init_feature (void); +SCM_INTERNAL void scm_init_feature (void); #endif /* SCM_FEATURE_H */ diff --git a/libguile/filesys.h b/libguile/filesys.h index 6534da909..a38a5b594 100644 --- a/libguile/filesys.h +++ b/libguile/filesys.h @@ -3,7 +3,7 @@ #ifndef SCM_FILESYS_H #define SCM_FILESYS_H -/* Copyright (C) 1995,1997,1998,1999,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1997,1998,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -65,7 +65,7 @@ SCM_API SCM scm_copy_file (SCM oldfile, SCM newfile); SCM_API SCM scm_dirname (SCM filename); SCM_API SCM scm_basename (SCM filename, SCM suffix); -SCM_API void scm_init_filesys (void); +SCM_INTERNAL void scm_init_filesys (void); #endif /* SCM_FILESYS_H */ diff --git a/libguile/fluids.h b/libguile/fluids.h index cabce4617..c48a8c332 100644 --- a/libguile/fluids.h +++ b/libguile/fluids.h @@ -3,7 +3,7 @@ #ifndef SCM_FLUIDS_H #define SCM_FLUIDS_H -/* Copyright (C) 1996,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1996,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -82,10 +82,10 @@ SCM_API void *scm_c_with_dynamic_state (SCM state, void *(*func)(void *), void *data); SCM_API SCM scm_with_dynamic_state (SCM state, SCM proc); -SCM_API SCM scm_i_make_initial_dynamic_state (void); +SCM_INTERNAL SCM scm_i_make_initial_dynamic_state (void); -SCM_API void scm_fluids_prehistory (void); -SCM_API void scm_init_fluids (void); +SCM_INTERNAL void scm_fluids_prehistory (void); +SCM_INTERNAL void scm_init_fluids (void); #endif /* SCM_FLUIDS_H */ diff --git a/libguile/fports.h b/libguile/fports.h index 634106760..c737b1eaa 100644 --- a/libguile/fports.h +++ b/libguile/fports.h @@ -3,7 +3,7 @@ #ifndef SCM_FPORTS_H #define SCM_FPORTS_H -/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -53,13 +53,13 @@ SCM_API void scm_evict_ports (int fd); SCM_API SCM scm_open_file (SCM filename, SCM modes); SCM_API SCM scm_fdes_to_port (int fdes, char *mode, SCM name); SCM_API SCM scm_file_port_p (SCM obj); -SCM_API void scm_init_fports (void); +SCM_INTERNAL void scm_init_fports (void); /* internal functions */ -SCM_API SCM scm_i_fdes_to_port (int fdes, long mode_bits, SCM name); -SCM_API int scm_i_fport_truncate (SCM, SCM); -SCM_API SCM scm_i_fport_seek (SCM, SCM, int); +SCM_INTERNAL SCM scm_i_fdes_to_port (int fdes, long mode_bits, SCM name); +SCM_INTERNAL int scm_i_fport_truncate (SCM, SCM); +SCM_INTERNAL SCM scm_i_fport_seek (SCM, SCM, int); #endif /* SCM_FPORTS_H */ diff --git a/libguile/futures.h b/libguile/futures.h index dffb38db8..95916f33b 100644 --- a/libguile/futures.h +++ b/libguile/futures.h @@ -3,7 +3,7 @@ #ifndef SCM_FUTURES_H #define SCM_FUTURES_H -/* Copyright (C) 2002, 2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2002, 2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -73,7 +73,7 @@ SCM_API scm_t_bits scm_tc16_future; extern SCM *scm_loc_sys_thread_handler; -SCM_API SCM scm_i_make_future (SCM thunk); +SCM_INTERNAL SCM scm_i_make_future (SCM thunk); SCM_API SCM scm_make_future (SCM thunk); SCM_API SCM scm_future_ref (SCM future); diff --git a/libguile/gc.h b/libguile/gc.h index d3c995996..05412bccf 100644 --- a/libguile/gc.h +++ b/libguile/gc.h @@ -3,7 +3,7 @@ #ifndef SCM_GC_H #define SCM_GC_H -/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2002, 2003, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -241,10 +241,10 @@ SCM_API int scm_debug_cells_gc_interval ; void scm_i_expensive_validation_check (SCM cell); #endif -SCM_API scm_i_pthread_mutex_t scm_i_gc_admin_mutex; +SCM_INTERNAL scm_i_pthread_mutex_t scm_i_gc_admin_mutex; #define scm_gc_running_p (SCM_I_CURRENT_THREAD->gc_running_p) -SCM_API scm_i_pthread_mutex_t scm_i_sweep_mutex; +SCM_INTERNAL scm_i_pthread_mutex_t scm_i_sweep_mutex; #ifdef __ia64__ void *scm_ia64_register_backing_store_base (void); @@ -320,7 +320,7 @@ SCM_API SCM scm_gc_live_object_stats (void); SCM_API SCM scm_gc (void); SCM_API void scm_gc_for_alloc (struct scm_t_cell_type_statistics *freelist); SCM_API SCM scm_gc_for_newcell (struct scm_t_cell_type_statistics *master, SCM *freelist); -SCM_API void scm_i_gc (const char *what); +SCM_INTERNAL void scm_i_gc (const char *what); SCM_API void scm_gc_mark (SCM p); SCM_API void scm_gc_mark_dependencies (SCM p); SCM_API void scm_mark_locations (SCM_STACKITEM x[], unsigned long n); @@ -384,7 +384,7 @@ SCM_API void scm_gc_unregister_roots (SCM *b, unsigned long n); SCM_API void scm_storage_prehistory (void); SCM_API int scm_init_storage (void); SCM_API void *scm_get_stack_base (void); -SCM_API void scm_init_gc (void); +SCM_INTERNAL void scm_init_gc (void); #if SCM_ENABLE_DEPRECATED == 1 diff --git a/libguile/gdbint.h b/libguile/gdbint.h index d6511f7ad..64b9559c9 100644 --- a/libguile/gdbint.h +++ b/libguile/gdbint.h @@ -3,7 +3,7 @@ #ifndef SCM_GDBINT_H #define SCM_GDBINT_H -/* Copyright (C) 1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -28,7 +28,7 @@ SCM_API int scm_print_carefully_p; -SCM_API void scm_init_gdbint (void); +SCM_INTERNAL void scm_init_gdbint (void); #endif /* SCM_GDBINT_H */ diff --git a/libguile/gettext.h b/libguile/gettext.h index 4d91358e5..8a13307d5 100644 --- a/libguile/gettext.h +++ b/libguile/gettext.h @@ -3,7 +3,7 @@ #ifndef SCM_GETTEXT_H #define SCM_GETTEXT_H -/* Copyright (C) 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -28,9 +28,9 @@ SCM_API SCM scm_textdomain (SCM domainname); SCM_API SCM scm_bindtextdomain (SCM domainname, SCM directory); SCM_API SCM scm_bind_textdomain_codeset (SCM domainname, SCM encoding); -SCM_API int scm_i_to_lc_category (SCM category, int allow_lc_all); +SCM_INTERNAL int scm_i_to_lc_category (SCM category, int allow_lc_all); -SCM_API void scm_init_gettext (void); +SCM_INTERNAL void scm_init_gettext (void); #endif /* SCM_GETTEXT_H */ diff --git a/libguile/goops.h b/libguile/goops.h index 3fc87886f..80ba98549 100644 --- a/libguile/goops.h +++ b/libguile/goops.h @@ -3,7 +3,7 @@ #ifndef SCM_GOOPS_H #define SCM_GOOPS_H -/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1998,1999,2000,2001,2002,2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -254,7 +254,8 @@ SCM_API SCM scm_pure_generic_p (SCM obj); #endif SCM_API SCM scm_sys_compute_slots (SCM c); -SCM_API SCM scm_i_get_keyword (SCM key, SCM l, long len, SCM default_value, const char *subr); +SCM_INTERNAL SCM scm_i_get_keyword (SCM key, SCM l, long len, + SCM default_value, const char *subr); SCM_API SCM scm_get_keyword (SCM key, SCM l, SCM default_value); SCM_API SCM scm_sys_initialize_object (SCM obj, SCM initargs); SCM_API SCM scm_sys_prep_layout_x (SCM c); @@ -297,8 +298,8 @@ SCM_API SCM scm_make (SCM args); SCM_API SCM scm_find_method (SCM args); SCM_API SCM scm_sys_method_more_specific_p (SCM m1, SCM m2, SCM targs); -SCM_API SCM scm_init_goops_builtins (void); -SCM_API void scm_init_goops (void); +SCM_INTERNAL SCM scm_init_goops_builtins (void); +SCM_INTERNAL void scm_init_goops (void); #if (SCM_ENABLE_DEPRECATED == 1) diff --git a/libguile/gsubr.h b/libguile/gsubr.h index e7488052b..418564901 100644 --- a/libguile/gsubr.h +++ b/libguile/gsubr.h @@ -3,7 +3,7 @@ #ifndef SCM_GSUBR_H #define SCM_GSUBR_H -/* Copyright (C) 1995,1996,1998,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -51,7 +51,7 @@ SCM_API SCM scm_c_define_gsubr_with_generic (const char *name, SCM (*fcn) (), SCM *gf); SCM_API SCM scm_gsubr_apply (SCM args); -SCM_API void scm_init_gsubr (void); +SCM_INTERNAL void scm_init_gsubr (void); #endif /* SCM_GSUBR_H */ diff --git a/libguile/guardians.h b/libguile/guardians.h index 735f960f8..295092edf 100644 --- a/libguile/guardians.h +++ b/libguile/guardians.h @@ -3,7 +3,7 @@ #ifndef SCM_GUARDIANS_H #define SCM_GUARDIANS_H -/* Copyright (C) 1998,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1998,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -26,11 +26,11 @@ SCM_API SCM scm_make_guardian (void); -SCM_API void scm_i_init_guardians_for_gc (void); -SCM_API void scm_i_identify_inaccessible_guardeds (void); -SCM_API int scm_i_mark_inaccessible_guardeds (void); +SCM_INTERNAL void scm_i_init_guardians_for_gc (void); +SCM_INTERNAL void scm_i_identify_inaccessible_guardeds (void); +SCM_INTERNAL int scm_i_mark_inaccessible_guardeds (void); -SCM_API void scm_init_guardians (void); +SCM_INTERNAL void scm_init_guardians (void); #endif /* SCM_GUARDIANS_H */ diff --git a/libguile/hash.h b/libguile/hash.h index a2d00c203..bbf9b2562 100644 --- a/libguile/hash.h +++ b/libguile/hash.h @@ -3,7 +3,7 @@ #ifndef SCM_HASH_H #define SCM_HASH_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -34,7 +34,7 @@ SCM_API unsigned long scm_ihashv (SCM obj, unsigned long n); SCM_API SCM scm_hashv (SCM obj, SCM n); SCM_API unsigned long scm_ihash (SCM obj, unsigned long n); SCM_API SCM scm_hash (SCM obj, SCM n); -SCM_API void scm_init_hash (void); +SCM_INTERNAL void scm_init_hash (void); #endif /* SCM_HASH_H */ diff --git a/libguile/hashtab.h b/libguile/hashtab.h index 101735460..4220b8668 100644 --- a/libguile/hashtab.h +++ b/libguile/hashtab.h @@ -3,7 +3,7 @@ #ifndef SCM_HASHTAB_H #define SCM_HASHTAB_H -/* Copyright (C) 1995,1996,1999,2000,2001, 2003, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1999,2000,2001, 2003, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -96,8 +96,9 @@ SCM_API SCM scm_weak_key_hash_table_p (SCM h); SCM_API SCM scm_weak_value_hash_table_p (SCM h); SCM_API SCM scm_doubly_weak_hash_table_p (SCM h); -SCM_API void scm_i_rehash (SCM table, unsigned long (*hash_fn)(), void *closure, const char*func_name); -SCM_API void scm_i_scan_weak_hashtables (void); +SCM_INTERNAL void scm_i_rehash (SCM table, unsigned long (*hash_fn)(), + void *closure, const char *func_name); +SCM_INTERNAL void scm_i_scan_weak_hashtables (void); SCM_API SCM scm_hash_fn_get_handle (SCM table, SCM obj, unsigned long (*hash_fn) (), SCM (*assoc_fn) (), void * closure); SCM_API SCM scm_hash_fn_create_handle_x (SCM table, SCM obj, SCM init, unsigned long (*hash_fn) (), SCM (*assoc_fn) (), void * closure); @@ -132,8 +133,8 @@ SCM_API SCM scm_hash_fold (SCM proc, SCM init, SCM hash); SCM_API SCM scm_hash_for_each (SCM proc, SCM hash); SCM_API SCM scm_hash_for_each_handle (SCM proc, SCM hash); SCM_API SCM scm_hash_map_to_list (SCM proc, SCM hash); -SCM_API void scm_hashtab_prehistory (void); -SCM_API void scm_init_hashtab (void); +SCM_INTERNAL void scm_hashtab_prehistory (void); +SCM_INTERNAL void scm_init_hashtab (void); #endif /* SCM_HASHTAB_H */ diff --git a/libguile/hooks.h b/libguile/hooks.h index 69972c3e7..49ea55350 100644 --- a/libguile/hooks.h +++ b/libguile/hooks.h @@ -3,7 +3,7 @@ #ifndef SCM_HOOKS_H #define SCM_HOOKS_H -/* Copyright (C) 1995,1996,1999,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -87,7 +87,7 @@ SCM_API SCM scm_reset_hook_x (SCM hook); SCM_API SCM scm_run_hook (SCM hook, SCM args); SCM_API void scm_c_run_hook (SCM hook, SCM args); SCM_API SCM scm_hook_to_list (SCM hook); -SCM_API void scm_init_hooks (void); +SCM_INTERNAL void scm_init_hooks (void); #endif /* SCM_HOOKS_H */ diff --git a/libguile/i18n.h b/libguile/i18n.h index 17dc240d8..57f1654a3 100644 --- a/libguile/i18n.h +++ b/libguile/i18n.h @@ -3,7 +3,7 @@ #ifndef SCM_I18N_H #define SCM_I18N_H -/* Copyright (C) 2006 Free Software Foundation, Inc. +/* Copyright (C) 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public diff --git a/libguile/init.h b/libguile/init.h index ec083da52..3ae27d8cc 100644 --- a/libguile/init.h +++ b/libguile/init.h @@ -3,7 +3,7 @@ #ifndef SCM_INIT_H #define SCM_INIT_H -/* Copyright (C) 1995,1996,1997,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -26,7 +26,7 @@ #include "libguile/threads.h" -SCM_API scm_i_pthread_mutex_t scm_i_init_mutex; +SCM_INTERNAL scm_i_pthread_mutex_t scm_i_init_mutex; SCM_API int scm_initialized_p; SCM_API void scm_init_guile (void); @@ -37,7 +37,7 @@ SCM_API void scm_boot_guile (int argc, char **argv, char **argv), void *closure); -SCM_API void scm_i_init_guile (SCM_STACKITEM *base); +SCM_INTERNAL void scm_i_init_guile (SCM_STACKITEM *base); SCM_API void scm_load_startup_files (void); diff --git a/libguile/ioext.h b/libguile/ioext.h index 7ced2af32..18289ea3c 100644 --- a/libguile/ioext.h +++ b/libguile/ioext.h @@ -3,7 +3,7 @@ #ifndef SCM_IOEXT_H #define SCM_IOEXT_H -/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -35,7 +35,7 @@ SCM_API SCM scm_isatty_p (SCM port); SCM_API SCM scm_fdopen (SCM fdes, SCM modes); SCM_API SCM scm_primitive_move_to_fdes (SCM port, SCM fd); SCM_API SCM scm_fdes_to_ports (SCM fd); -SCM_API void scm_init_ioext (void); +SCM_INTERNAL void scm_init_ioext (void); #endif /* SCM_IOEXT_H */ diff --git a/libguile/keywords.h b/libguile/keywords.h index d11c0e334..a80e31bff 100644 --- a/libguile/keywords.h +++ b/libguile/keywords.h @@ -3,7 +3,7 @@ #ifndef SCM_KEYWORDS_H #define SCM_KEYWORDS_H -/* Copyright (C) 1995,1996,1999,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -38,7 +38,7 @@ SCM_API int scm_is_keyword (SCM val); SCM_API SCM scm_from_locale_keyword (const char *str); SCM_API SCM scm_from_locale_keywordn (const char *str, size_t len); -SCM_API void scm_init_keywords (void); +SCM_INTERNAL void scm_init_keywords (void); #endif /* SCM_KEYWORDS_H */ diff --git a/libguile/lang.h b/libguile/lang.h index 886bb34ce..991e9ca76 100644 --- a/libguile/lang.h +++ b/libguile/lang.h @@ -3,7 +3,7 @@ #ifndef SCM_LANG_H #define SCM_LANG_H -/* Copyright (C) 1998, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1998, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -30,7 +30,7 @@ #define SCM_NILP(x) (scm_is_eq ((x), SCM_ELISP_NIL)) -SCM_API void scm_init_lang (void); +SCM_INTERNAL void scm_init_lang (void); #else /* ! SCM_ENABLE_ELISP */ diff --git a/libguile/list.h b/libguile/list.h index 749e65d50..733432d76 100644 --- a/libguile/list.h +++ b/libguile/list.h @@ -3,7 +3,7 @@ #ifndef SCM_LIST_H #define SCM_LIST_H -/* Copyright (C) 1995,1996,1997,2000,2001,2003,2004,2005,2006 +/* Copyright (C) 1995,1996,1997,2000,2001,2003,2004,2005,2006,2008 * Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or @@ -71,8 +71,8 @@ SCM_API SCM scm_filter_x (SCM pred, SCM list); /* Guile internal functions */ -SCM_API SCM scm_i_finite_list_copy (SCM /* a list known to be finite */); -SCM_API void scm_init_list (void); +SCM_INTERNAL SCM scm_i_finite_list_copy (SCM /* a list known to be finite */); +SCM_INTERNAL void scm_init_list (void); #endif /* SCM_LIST_H */ diff --git a/libguile/load.h b/libguile/load.h index 9b45d409a..57cc7e8ac 100644 --- a/libguile/load.h +++ b/libguile/load.h @@ -3,7 +3,7 @@ #ifndef SCM_LOAD_H #define SCM_LOAD_H -/* Copyright (C) 1995,1996,1998,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -26,7 +26,6 @@ SCM_API SCM scm_parse_path (SCM path, SCM tail); -SCM_API void scm_init_load_path (void); SCM_API SCM scm_primitive_load (SCM filename); SCM_API SCM scm_c_primitive_load (const char *filename); SCM_API SCM scm_sys_package_data_dir (void); @@ -36,7 +35,8 @@ SCM_API SCM scm_search_path (SCM path, SCM filename, SCM exts); SCM_API SCM scm_sys_search_load_path (SCM filename); SCM_API SCM scm_primitive_load_path (SCM filename); SCM_API SCM scm_c_primitive_load_path (const char *filename); -SCM_API void scm_init_load (void); +SCM_INTERNAL void scm_init_load_path (void); +SCM_INTERNAL void scm_init_load (void); #endif /* SCM_LOAD_H */ diff --git a/libguile/macros.h b/libguile/macros.h index 0ad8757de..e1de77ff9 100644 --- a/libguile/macros.h +++ b/libguile/macros.h @@ -3,7 +3,7 @@ #ifndef SCM_MACROS_H #define SCM_MACROS_H -/* Copyright (C) 1998,2000,2001,2002,2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1998,2000,2001,2002,2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -36,7 +36,7 @@ SCM_API scm_t_bits scm_tc16_macro; -SCM_API SCM scm_i_makbimacro (SCM code); +SCM_INTERNAL SCM scm_i_makbimacro (SCM code); SCM_API SCM scm_makmmacro (SCM code); SCM_API SCM scm_makacro (SCM code); SCM_API SCM scm_macro_p (SCM obj); @@ -46,7 +46,7 @@ SCM_API SCM scm_macro_transformer (SCM m); SCM_API SCM scm_make_synt (const char *name, SCM (*macroizer) (SCM), SCM (*fcn) ()); -SCM_API void scm_init_macros (void); +SCM_INTERNAL void scm_init_macros (void); #if SCM_ENABLE_DEPRECATED == 1 SCM_API SCM scm_makmacro (SCM code); diff --git a/libguile/mallocs.h b/libguile/mallocs.h index cae4d1f6b..f711ddb94 100644 --- a/libguile/mallocs.h +++ b/libguile/mallocs.h @@ -3,7 +3,7 @@ #ifndef SCM_MALLOCS_H #define SCM_MALLOCS_H -/* Copyright (C) 1995,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -34,7 +34,7 @@ SCM_API scm_t_bits scm_tc16_malloc; SCM_API SCM scm_malloc_obj (size_t n); -SCM_API void scm_init_mallocs (void); +SCM_INTERNAL void scm_init_mallocs (void); #endif /* SCM_MALLOCS_H */ diff --git a/libguile/modules.h b/libguile/modules.h index 6e4f4d970..afac9f4e4 100644 --- a/libguile/modules.h +++ b/libguile/modules.h @@ -3,7 +3,7 @@ #ifndef SCM_MODULES_H #define SCM_MODULES_H -/* Copyright (C) 1998, 2000, 2001, 2002, 2003, 2006, 2007 Free Software Foundation, Inc. +/* Copyright (C) 1998, 2000, 2001, 2002, 2003, 2006, 2007, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -116,8 +116,8 @@ SCM_API SCM scm_env_module (SCM env); SCM_API SCM scm_top_level_env (SCM thunk); SCM_API SCM scm_system_module_env_p (SCM env); -SCM_API void scm_modules_prehistory (void); -SCM_API void scm_init_modules (void); +SCM_INTERNAL void scm_modules_prehistory (void); +SCM_INTERNAL void scm_init_modules (void); #endif /* SCM_MODULES_H */ diff --git a/libguile/net_db.h b/libguile/net_db.h index ae8e8aa11..df1f03067 100644 --- a/libguile/net_db.h +++ b/libguile/net_db.h @@ -3,7 +3,7 @@ #ifndef SCM_NET_DB_H #define SCM_NET_DB_H -/* Copyright (C) 1995,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -34,7 +34,7 @@ SCM_API SCM scm_sethost (SCM arg); SCM_API SCM scm_setnet (SCM arg); SCM_API SCM scm_setproto (SCM arg); SCM_API SCM scm_setserv (SCM arg); -SCM_API void scm_init_net_db (void); +SCM_INTERNAL void scm_init_net_db (void); #endif /* SCM_NET_DB_H */ diff --git a/libguile/numbers.h b/libguile/numbers.h index 2c2fdcf07..e139dac7b 100644 --- a/libguile/numbers.h +++ b/libguile/numbers.h @@ -3,7 +3,7 @@ #ifndef SCM_NUMBERS_H #define SCM_NUMBERS_H -/* Copyright (C) 1995,1996,1998,2000,2001,2002,2003,2004,2005, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000,2001,2002,2003,2004,2005, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -261,15 +261,15 @@ SCM_API SCM scm_exp (SCM z); SCM_API SCM scm_sqrt (SCM z); /* bignum internal functions */ -SCM_API SCM scm_i_mkbig (void); -SCM_API SCM scm_i_normbig (SCM x); -SCM_API int scm_i_bigcmp (SCM a, SCM b); -SCM_API SCM scm_i_dbl2big (double d); -SCM_API SCM scm_i_dbl2num (double d); -SCM_API double scm_i_big2dbl (SCM b); -SCM_API SCM scm_i_long2big (long n); -SCM_API SCM scm_i_ulong2big (unsigned long n); -SCM_API SCM scm_i_clonebig (SCM src_big, int same_sign_p); +SCM_INTERNAL SCM scm_i_mkbig (void); +SCM_API /* FIXME: not internal */ SCM scm_i_normbig (SCM x); +SCM_INTERNAL int scm_i_bigcmp (SCM a, SCM b); +SCM_INTERNAL SCM scm_i_dbl2big (double d); +SCM_INTERNAL SCM scm_i_dbl2num (double d); +SCM_API /* FIXME: not internal */ double scm_i_big2dbl (SCM b); +SCM_API /* FIXME: not internal */ SCM scm_i_long2big (long n); +SCM_API /* FIXME: not internal */ SCM scm_i_ulong2big (unsigned long n); +SCM_API /* FIXME: not internal */ SCM scm_i_clonebig (SCM src_big, int same_sign_p); /* ratio functions */ SCM_API SCM scm_rationalize (SCM x, SCM err); @@ -277,13 +277,13 @@ SCM_API SCM scm_numerator (SCM z); SCM_API SCM scm_denominator (SCM z); /* fraction internal functions */ -SCM_API double scm_i_fraction2double (SCM z); -SCM_API SCM scm_i_fraction_equalp (SCM x, SCM y); -SCM_API int scm_i_print_fraction (SCM sexp, SCM port, scm_print_state *pstate); +SCM_INTERNAL double scm_i_fraction2double (SCM z); +SCM_INTERNAL SCM scm_i_fraction_equalp (SCM x, SCM y); +SCM_INTERNAL int scm_i_print_fraction (SCM sexp, SCM port, scm_print_state *pstate); /* general internal functions */ -SCM_API void scm_i_print_double (double val, SCM port); -SCM_API void scm_i_print_complex (double real, double imag, SCM port); +SCM_INTERNAL void scm_i_print_double (double val, SCM port); +SCM_INTERNAL void scm_i_print_complex (double real, double imag, SCM port); /* conversion functions for integers */ @@ -480,7 +480,7 @@ SCM_API double scm_c_angle (SCM z); SCM_API int scm_is_number (SCM val); -SCM_API void scm_init_numbers (void); +SCM_INTERNAL void scm_init_numbers (void); #endif /* SCM_NUMBERS_H */ diff --git a/libguile/objects.h b/libguile/objects.h index fdd8e2891..68996d2a0 100644 --- a/libguile/objects.h +++ b/libguile/objects.h @@ -3,7 +3,7 @@ #ifndef SCM_OBJECTS_H #define SCM_OBJECTS_H -/* Copyright (C) 1996,1999,2000,2001, 2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1996,1999,2000,2001, 2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -181,7 +181,7 @@ SCM_API SCM scm_metaclass_operator; /* Goops functions. */ SCM_API SCM scm_make_extended_class (char const *type_name, int applicablep); -SCM_API void scm_i_inherit_applicable (SCM c); +SCM_INTERNAL void scm_i_inherit_applicable (SCM c); SCM_API void scm_make_port_classes (long ptobnum, char *type_name); SCM_API void scm_change_object_class (SCM, SCM, SCM); SCM_API SCM scm_memoize_method (SCM x, SCM args); @@ -205,9 +205,9 @@ SCM_API SCM scm_object_procedure (SCM obj); SCM_API SCM scm_make_class_object (SCM metaclass, SCM layout); SCM_API SCM scm_make_subclass_object (SCM c, SCM layout); -SCM_API SCM scm_i_make_class_object (SCM metaclass, SCM layout_string, - unsigned long flags); -SCM_API void scm_init_objects (void); +SCM_INTERNAL SCM scm_i_make_class_object (SCM metaclass, SCM layout_string, + unsigned long flags); +SCM_INTERNAL void scm_init_objects (void); #endif /* SCM_OBJECTS_H */ diff --git a/libguile/objprop.h b/libguile/objprop.h index edf2d9573..7e5365a74 100644 --- a/libguile/objprop.h +++ b/libguile/objprop.h @@ -3,7 +3,7 @@ #ifndef SCM_OBJPROP_H #define SCM_OBJPROP_H -/* Copyright (C) 1995,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -30,7 +30,7 @@ SCM_API SCM scm_object_properties (SCM obj); SCM_API SCM scm_set_object_properties_x (SCM obj, SCM plist); SCM_API SCM scm_object_property (SCM obj, SCM key); SCM_API SCM scm_set_object_property_x (SCM obj, SCM key, SCM val); -SCM_API void scm_init_objprop (void); +SCM_INTERNAL void scm_init_objprop (void); #endif /* SCM_OBJPROP_H */ diff --git a/libguile/options.h b/libguile/options.h index 5b9664958..4facdce01 100644 --- a/libguile/options.h +++ b/libguile/options.h @@ -3,7 +3,7 @@ #ifndef SCM_OPTIONS_H #define SCM_OPTIONS_H -/* Copyright (C) 1995,1996,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -43,7 +43,7 @@ typedef struct scm_t_option SCM_API SCM scm_options_try (SCM args, scm_t_option options[], const char *s, int dry_run); SCM_API SCM scm_options (SCM, scm_t_option [], const char*); SCM_API void scm_init_opts (SCM (*) (SCM), scm_t_option []); -SCM_API void scm_init_options (void); +SCM_INTERNAL void scm_init_options (void); #endif /* SCM_OPTIONS_H */ diff --git a/libguile/pairs.h b/libguile/pairs.h index dd22ff36e..61af24efe 100644 --- a/libguile/pairs.h +++ b/libguile/pairs.h @@ -148,7 +148,7 @@ SCM_API SCM scm_i_chase_pairs (SCM x, scm_t_uint32 pattern); #define scm_caaadr(x) scm_i_chase_pairs ((x), SCM_I_AAAD_PAT) #define scm_caaaar(x) scm_i_chase_pairs ((x), SCM_I_AAAA_PAT) -SCM_API void scm_init_pairs (void); +SCM_INTERNAL void scm_init_pairs (void); #endif /* SCM_PAIRS_H */ diff --git a/libguile/ports.h b/libguile/ports.h index fb0ef4eee..084a55500 100644 --- a/libguile/ports.h +++ b/libguile/ports.h @@ -109,8 +109,8 @@ typedef struct } scm_t_port; -SCM_API scm_i_pthread_mutex_t scm_i_port_table_mutex; -SCM_API SCM scm_i_port_weak_hash; +SCM_INTERNAL scm_i_pthread_mutex_t scm_i_port_table_mutex; +SCM_INTERNAL SCM scm_i_port_weak_hash; #define SCM_READ_BUFFER_EMPTY_P(c_port) (c_port->read_pos >= c_port->read_end) @@ -195,7 +195,7 @@ typedef struct scm_t_ptob_descriptor SCM_API scm_t_ptob_descriptor *scm_ptobs; SCM_API long scm_numptob; -SCM_API long scm_i_port_table_room; +SCM_INTERNAL long scm_i_port_table_room; @@ -241,7 +241,7 @@ SCM_API void scm_dynwind_current_input_port (SCM port); SCM_API void scm_dynwind_current_output_port (SCM port); SCM_API void scm_dynwind_current_error_port (SCM port); SCM_API SCM scm_new_port_table_entry (scm_t_bits tag); -SCM_API void scm_i_remove_port (SCM port); +SCM_INTERNAL void scm_i_remove_port (SCM port); SCM_API void scm_grow_port_cbuf (SCM port, size_t requested); SCM_API SCM scm_pt_size (void); SCM_API SCM scm_pt_member (SCM member); @@ -288,7 +288,7 @@ SCM_API void scm_print_port_mode (SCM exp, SCM port); SCM_API void scm_ports_prehistory (void); SCM_API SCM scm_void_port (char * mode_str); SCM_API SCM scm_sys_make_void_port (SCM mode); -SCM_API void scm_init_ports (void); +SCM_INTERNAL void scm_init_ports (void); #if SCM_ENABLE_DEPRECATED==1 @@ -302,8 +302,8 @@ SCM_API SCM scm_pt_member (SCM member); /* internal */ -SCM_API long scm_i_mode_bits (SCM modes); -SCM_API void scm_i_dynwind_current_load_port (SCM port); +SCM_INTERNAL long scm_i_mode_bits (SCM modes); +SCM_INTERNAL void scm_i_dynwind_current_load_port (SCM port); #endif /* SCM_PORTS_H */ diff --git a/libguile/posix.h b/libguile/posix.h index 871bba850..d51da9479 100644 --- a/libguile/posix.h +++ b/libguile/posix.h @@ -3,7 +3,7 @@ #ifndef SCM_POSIX_H #define SCM_POSIX_H -/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -84,9 +84,9 @@ SCM_API SCM scm_getpass (SCM prompt); SCM_API SCM scm_flock (SCM file, SCM operation); SCM_API SCM scm_sethostname (SCM name); SCM_API SCM scm_gethostname (void); -SCM_API void scm_init_posix (void); +SCM_INTERNAL void scm_init_posix (void); -SCM_API scm_i_pthread_mutex_t scm_i_locale_mutex; +SCM_INTERNAL scm_i_pthread_mutex_t scm_i_locale_mutex; #endif /* SCM_POSIX_H */ diff --git a/libguile/print.h b/libguile/print.h index 740aa281f..8974a7554 100644 --- a/libguile/print.h +++ b/libguile/print.h @@ -3,7 +3,7 @@ #ifndef SCM_PRINT_H #define SCM_PRINT_H -/* Copyright (C) 1995,1996,1998,2000,2001, 2003, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000,2001, 2003, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -75,7 +75,7 @@ SCM_API scm_t_bits scm_tc16_port_with_ps; SCM_API SCM scm_print_options (SCM setting); SCM_API SCM scm_make_print_state (void); SCM_API void scm_free_print_state (SCM print_state); -SCM scm_i_port_with_print_state (SCM port, SCM print_state); +SCM_INTERNAL SCM scm_i_port_with_print_state (SCM port, SCM print_state); SCM_API void scm_intprint (scm_t_intmax n, int radix, SCM port); SCM_API void scm_uintprint (scm_t_uintmax n, int radix, SCM port); SCM_API void scm_ipruk (char *hdr, SCM ptr, SCM port); @@ -92,7 +92,7 @@ SCM_API SCM scm_printer_apply (SCM proc, SCM exp, SCM port, scm_print_state *); SCM_API SCM scm_port_with_print_state (SCM port, SCM pstate); SCM_API SCM scm_get_print_state (SCM port); SCM_API int scm_valid_oport_value_p (SCM val); -SCM_API void scm_init_print (void); +SCM_INTERNAL void scm_init_print (void); #ifdef GUILE_DEBUG SCM_API SCM scm_current_pstate (void); diff --git a/libguile/private-gc.h b/libguile/private-gc.h index 34d789b30..ce60cbba3 100644 --- a/libguile/private-gc.h +++ b/libguile/private-gc.h @@ -1,7 +1,7 @@ /* * private-gc.h - private declarations for garbage collection. * - * Copyright (C) 2002, 03, 04, 05, 06, 07 Free Software Foundation, Inc. + * Copyright (C) 2002, 03, 04, 05, 06, 07, 08 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -163,10 +163,13 @@ typedef struct scm_sweep_statistics extern scm_t_cell_type_statistics scm_i_master_freelist; extern scm_t_cell_type_statistics scm_i_master_freelist2; +SCM_INTERNAL void scm_i_adjust_min_yield (scm_t_cell_type_statistics *freelist, scm_t_sweep_statistics sweep_stats, scm_t_sweep_statistics sweep_stats_1); +SCM_INTERNAL void scm_i_gc_sweep_freelist_reset (scm_t_cell_type_statistics *freelist); +SCM_INTERNAL int scm_i_gc_grow_heap_p (scm_t_cell_type_statistics * freelist); @@ -263,39 +266,46 @@ extern scm_t_heap_segment ** scm_i_heap_segment_table; extern size_t scm_i_heap_segment_table_size; -int scm_i_init_card_freelist (scm_t_cell * card, SCM *free_list,scm_t_heap_segment*); -int scm_i_sweep_card (scm_t_cell * card, SCM *free_list, scm_t_heap_segment*); -void scm_i_card_statistics (scm_t_cell *p, SCM hashtab, scm_t_heap_segment *seg); -char const *scm_i_tag_name (scm_t_bits tag); /* MOVEME */ - -int scm_i_initialize_heap_segment_data (scm_t_heap_segment * segment, size_t requested); -int scm_i_segment_card_count (scm_t_heap_segment * seg); -int scm_i_segment_cell_count (scm_t_heap_segment * seg); - -void scm_i_clear_segment_mark_space (scm_t_heap_segment *seg); -scm_t_heap_segment * scm_i_make_empty_heap_segment (scm_t_cell_type_statistics*); -SCM scm_i_sweep_some_cards (scm_t_heap_segment *seg, - scm_t_sweep_statistics *sweep_stats); -void scm_i_sweep_segment (scm_t_heap_segment *seg, - scm_t_sweep_statistics *sweep_stats); - -void scm_i_heap_segment_statistics (scm_t_heap_segment *seg, SCM tab); - - -int scm_i_insert_segment (scm_t_heap_segment * seg); -long int scm_i_find_heap_segment_containing_object (SCM obj); -int scm_i_get_new_heap_segment (scm_t_cell_type_statistics *, - scm_t_sweep_statistics, - policy_on_error); -void scm_i_clear_mark_space (void); -void scm_i_sweep_segments (void); -SCM scm_i_sweep_some_segments (scm_t_cell_type_statistics *fl, - scm_t_sweep_statistics *sweep_stats); -void scm_i_reset_segments (void); -void scm_i_sweep_all_segments (char const *reason, - scm_t_sweep_statistics *sweep_stats); -SCM scm_i_all_segments_statistics (SCM hashtab); -void scm_i_make_initial_segment (int init_heap_size, scm_t_cell_type_statistics *freelist); +SCM_INTERNAL int scm_i_init_card_freelist (scm_t_cell * card, SCM *free_list, + scm_t_heap_segment*); +SCM_INTERNAL int scm_i_sweep_card (scm_t_cell *card, SCM *free_list, + scm_t_heap_segment *); +SCM_INTERNAL void scm_i_card_statistics (scm_t_cell *p, SCM hashtab, + scm_t_heap_segment *seg); +SCM_INTERNAL char const *scm_i_tag_name (scm_t_bits tag); /* MOVEME */ + +SCM_INTERNAL int scm_i_initialize_heap_segment_data (scm_t_heap_segment *seg, + size_t requested); +SCM_INTERNAL int scm_i_segment_card_count (scm_t_heap_segment *seg); +SCM_INTERNAL int scm_i_segment_cell_count (scm_t_heap_segment *seg); + +SCM_INTERNAL void scm_i_clear_segment_mark_space (scm_t_heap_segment *seg); +SCM_INTERNAL scm_t_heap_segment * +scm_i_make_empty_heap_segment (scm_t_cell_type_statistics*); +SCM_INTERNAL SCM scm_i_sweep_some_cards (scm_t_heap_segment *seg, + scm_t_sweep_statistics *sweep_stats); +SCM_INTERNAL void scm_i_sweep_segment (scm_t_heap_segment *seg, + scm_t_sweep_statistics *sweep_stats); + +SCM_INTERNAL void scm_i_heap_segment_statistics (scm_t_heap_segment *seg, + SCM tab); + + +SCM_INTERNAL int scm_i_insert_segment (scm_t_heap_segment *seg); +SCM_INTERNAL long int scm_i_find_heap_segment_containing_object (SCM obj); +SCM_INTERNAL int scm_i_get_new_heap_segment (scm_t_cell_type_statistics *, + scm_t_sweep_statistics, + policy_on_error); +SCM_INTERNAL void scm_i_clear_mark_space (void); +SCM_INTERNAL void scm_i_sweep_segments (void); +SCM_INTERNAL SCM scm_i_sweep_some_segments (scm_t_cell_type_statistics *fl, + scm_t_sweep_statistics *sweep_stats); +SCM_INTERNAL void scm_i_reset_segments (void); +SCM_INTERNAL void scm_i_sweep_all_segments (char const *reason, + scm_t_sweep_statistics *sweep_stats); +SCM_INTERNAL SCM scm_i_all_segments_statistics (SCM hashtab); +SCM_INTERNAL void scm_i_make_initial_segment (int init_heap_size, + scm_t_cell_type_statistics *fl); extern long int scm_i_deprecated_memory_return; diff --git a/libguile/procprop.h b/libguile/procprop.h index dffdfd7bc..bf27dba0a 100644 --- a/libguile/procprop.h +++ b/libguile/procprop.h @@ -3,7 +3,7 @@ #ifndef SCM_PROCPROP_H #define SCM_PROCPROP_H -/* Copyright (C) 1995,1996,1998,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -32,12 +32,12 @@ SCM_API SCM scm_sym_system_procedure; -SCM_API SCM scm_i_procedure_arity (SCM proc); +SCM_INTERNAL SCM scm_i_procedure_arity (SCM proc); SCM_API SCM scm_procedure_properties (SCM proc); SCM_API SCM scm_set_procedure_properties_x (SCM proc, SCM new_val); SCM_API SCM scm_procedure_property (SCM p, SCM k); SCM_API SCM scm_set_procedure_property_x (SCM p, SCM k, SCM v); -SCM_API void scm_init_procprop (void); +SCM_INTERNAL void scm_init_procprop (void); #endif /* SCM_PROCPROP_H */ diff --git a/libguile/procs.h b/libguile/procs.h index 060c8ee42..cf9cdf182 100644 --- a/libguile/procs.h +++ b/libguile/procs.h @@ -3,7 +3,7 @@ #ifndef SCM_PROCS_H #define SCM_PROCS_H -/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -154,8 +154,8 @@ SCM_API SCM scm_procedure_with_setter_p (SCM obj); SCM_API SCM scm_make_procedure_with_setter (SCM procedure, SCM setter); SCM_API SCM scm_procedure (SCM proc); SCM_API SCM scm_setter (SCM proc); -SCM_API void scm_init_subr_table (void); -SCM_API void scm_init_procs (void); +SCM_INTERNAL void scm_init_subr_table (void); +SCM_INTERNAL void scm_init_procs (void); #ifdef GUILE_DEBUG SCM_API SCM scm_make_cclo (SCM proc, SCM len); diff --git a/libguile/properties.h b/libguile/properties.h index 3f8cb6d75..54feb01d9 100644 --- a/libguile/properties.h +++ b/libguile/properties.h @@ -3,7 +3,7 @@ #ifndef SCM_PROPERTIES_H #define SCM_PROPERTIES_H -/* Copyright (C) 1995,1996,1998,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -29,7 +29,7 @@ SCM_API SCM scm_primitive_property_ref (SCM prop, SCM obj); SCM_API SCM scm_primitive_property_set_x (SCM prop, SCM obj, SCM val); SCM_API SCM scm_primitive_property_del_x (SCM prop, SCM obj); -SCM_API void scm_init_properties (void); +SCM_INTERNAL void scm_init_properties (void); #endif /* SCM_PROPERTIES_H */ diff --git a/libguile/ramap.h b/libguile/ramap.h index 8383649c9..9d870389a 100644 --- a/libguile/ramap.h +++ b/libguile/ramap.h @@ -3,7 +3,7 @@ #ifndef SCM_RAMAP_H #define SCM_RAMAP_H -/* Copyright (C) 1995,1996,1997,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -47,7 +47,7 @@ SCM_API SCM scm_array_for_each (SCM proc, SCM ra0, SCM lra); SCM_API SCM scm_array_index_map_x (SCM ra, SCM proc); SCM_API SCM scm_raequal (SCM ra0, SCM ra1); SCM_API SCM scm_array_equal_p (SCM ra0, SCM ra1); -SCM_API void scm_init_ramap (void); +SCM_INTERNAL void scm_init_ramap (void); #endif /* SCM_RAMAP_H */ diff --git a/libguile/random.h b/libguile/random.h index 6ec43ff53..ae44092ab 100644 --- a/libguile/random.h +++ b/libguile/random.h @@ -3,7 +3,7 @@ #ifndef SCM_RANDOM_H #define SCM_RANDOM_H -/* Copyright (C) 1999,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1999,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -62,9 +62,9 @@ typedef struct scm_t_i_rstate { unsigned long c; } scm_t_i_rstate; -SCM_API unsigned long scm_i_uniform32 (scm_t_i_rstate *); -SCM_API void scm_i_init_rstate (scm_t_i_rstate *, const char *seed, int n); -SCM_API scm_t_i_rstate *scm_i_copy_rstate (scm_t_i_rstate *); +SCM_INTERNAL unsigned long scm_i_uniform32 (scm_t_i_rstate *); +SCM_INTERNAL void scm_i_init_rstate (scm_t_i_rstate *, const char *seed, int n); +SCM_INTERNAL scm_t_i_rstate *scm_i_copy_rstate (scm_t_i_rstate *); /* @@ -99,7 +99,7 @@ SCM_API SCM scm_random_hollow_sphere_x (SCM v, SCM state); SCM_API SCM scm_random_normal (SCM state); SCM_API SCM scm_random_normal_vector_x (SCM v, SCM state); SCM_API SCM scm_random_exp (SCM state); -SCM_API void scm_init_random (void); +SCM_INTERNAL void scm_init_random (void); #endif /* SCM_RANDOM_H */ diff --git a/libguile/rdelim.h b/libguile/rdelim.h index b211bb208..17efb4fe5 100644 --- a/libguile/rdelim.h +++ b/libguile/rdelim.h @@ -3,7 +3,7 @@ #ifndef SCM_RDELIM_H #define SCM_RDELIM_H -/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -30,7 +30,7 @@ SCM_API SCM scm_read_line (SCM port); SCM_API SCM scm_write_line (SCM obj, SCM port); SCM_API SCM scm_init_rdelim_builtins (void); -SCM_API void scm_init_rdelim (void); +SCM_INTERNAL void scm_init_rdelim (void); #endif /* SCM_RDELIM_H */ diff --git a/libguile/read.h b/libguile/read.h index 128ba3d34..4253622da 100644 --- a/libguile/read.h +++ b/libguile/read.h @@ -3,7 +3,7 @@ #ifndef SCM_READ_H #define SCM_READ_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -56,11 +56,11 @@ SCM_API SCM scm_read (SCM port); SCM_API size_t scm_read_token (int ic, SCM * tok_buf, SCM port, int weird); SCM_API SCM scm_read_hash_extend (SCM chr, SCM proc); -SCM_API void scm_i_input_error (const char *func, SCM port, - const char *message, SCM arg) +SCM_INTERNAL void scm_i_input_error (const char *func, SCM port, + const char *message, SCM arg) SCM_NORETURN; -SCM_API void scm_init_read (void); +SCM_INTERNAL void scm_init_read (void); #endif /* SCM_READ_H */ diff --git a/libguile/regex-posix.h b/libguile/regex-posix.h index c3821362a..2863b0562 100644 --- a/libguile/regex-posix.h +++ b/libguile/regex-posix.h @@ -3,7 +3,7 @@ #ifndef SCM_REGEX_POSIX_H #define SCM_REGEX_POSIX_H -/* Copyright (C) 1997,1998,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1997,1998,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -31,7 +31,7 @@ SCM_API scm_t_bits scm_tc16_regex; SCM_API SCM scm_make_regexp (SCM pat, SCM flags); SCM_API SCM scm_regexp_p (SCM x); SCM_API SCM scm_regexp_exec (SCM rx, SCM str, SCM start, SCM flags); -SCM_API void scm_init_regex_posix (void); +SCM_INTERNAL void scm_init_regex_posix (void); #endif /* SCM_REGEX_POSIX_H */ diff --git a/libguile/root.h b/libguile/root.h index 6c7800f5f..11f6b4f3a 100644 --- a/libguile/root.h +++ b/libguile/root.h @@ -3,7 +3,7 @@ #ifndef SCM_ROOT_H #define SCM_ROOT_H -/* Copyright (C) 1996,1998,2000,2001, 2002, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1996,1998,2000,2001, 2002, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -55,7 +55,7 @@ SCM_API SCM scm_internal_cwdr (scm_t_catch_body body, SCM_API SCM scm_call_with_dynamic_root (SCM thunk, SCM handler); SCM_API SCM scm_dynamic_root (void); SCM_API SCM scm_apply_with_dynamic_root (SCM proc, SCM a1, SCM args, SCM handler); -SCM_API void scm_init_root (void); +SCM_INTERNAL void scm_init_root (void); #endif /* SCM_ROOT_H */ diff --git a/libguile/rw.h b/libguile/rw.h index 108104c33..b526051fc 100644 --- a/libguile/rw.h +++ b/libguile/rw.h @@ -3,7 +3,7 @@ #ifndef SCM_RW_H #define SCM_RW_H -/* Copyright (C) 2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -29,8 +29,8 @@ SCM_API SCM scm_read_string_x_partial (SCM str, SCM port_or_fdes, SCM start, SCM_API SCM scm_write_string_partial (SCM str, SCM port_or_fdes, SCM start, SCM end); -SCM_API SCM scm_init_rw_builtins (void); -SCM_API void scm_init_rw (void); +SCM_INTERNAL SCM scm_init_rw_builtins (void); +SCM_INTERNAL void scm_init_rw (void); #endif /* SCM_RW_H */ diff --git a/libguile/scmsigs.h b/libguile/scmsigs.h index 2aced3a3c..bcbf825d4 100644 --- a/libguile/scmsigs.h +++ b/libguile/scmsigs.h @@ -3,7 +3,7 @@ #ifndef SCM_SCMSIGS_H #define SCM_SCMSIGS_H -/* Copyright (C) 1995,1996,1997,1998,2000, 2002, 2006, 2007 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000, 2002, 2006, 2007, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -40,12 +40,12 @@ SCM_API SCM scm_pause (void); SCM_API SCM scm_sleep (SCM i); SCM_API SCM scm_usleep (SCM i); SCM_API SCM scm_raise (SCM sig); -SCM_API void scm_init_scmsigs (void); +SCM_INTERNAL void scm_init_scmsigs (void); -SCM_API void scm_i_close_signal_pipe (void); -SCM_API void scm_i_ensure_signal_delivery_thread (void); +SCM_INTERNAL void scm_i_close_signal_pipe (void); +SCM_INTERNAL void scm_i_ensure_signal_delivery_thread (void); -SCM_API scm_i_thread *scm_i_signal_delivery_thread; +SCM_INTERNAL scm_i_thread *scm_i_signal_delivery_thread; #endif /* SCM_SCMSIGS_H */ diff --git a/libguile/script.h b/libguile/script.h index 37ebddebc..6c02f8d8d 100644 --- a/libguile/script.h +++ b/libguile/script.h @@ -3,7 +3,7 @@ #ifndef SCM_SCRIPT_H #define SCM_SCRIPT_H -/* Copyright (C) 1997,1998,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1997,1998,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -36,7 +36,7 @@ SCM_API void scm_shell_usage (int fatal, char *message); SCM_API SCM scm_compile_shell_switches (int argc, char **argv); SCM_API void scm_shell (int argc, char **argv); SCM_API char *scm_usage_name; -SCM_API void scm_init_script (void); +SCM_INTERNAL void scm_init_script (void); #endif /* SCM_SCRIPT_H */ diff --git a/libguile/simpos.h b/libguile/simpos.h index 1ce207b1d..6df8bb1d2 100644 --- a/libguile/simpos.h +++ b/libguile/simpos.h @@ -3,7 +3,7 @@ #ifndef SCM_SIMPOS_H #define SCM_SIMPOS_H -/* Copyright (C) 1995,1996,1997,1998,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -31,7 +31,7 @@ SCM_API SCM scm_system_star (SCM cmds); SCM_API SCM scm_getenv (SCM nam); SCM_API SCM scm_primitive_exit (SCM status); SCM_API SCM scm_primitive__exit (SCM status); -SCM_API void scm_init_simpos (void); +SCM_INTERNAL void scm_init_simpos (void); #endif /* SCM_SIMPOS_H */ diff --git a/libguile/socket.h b/libguile/socket.h index 146d283dc..133dbf7c6 100644 --- a/libguile/socket.h +++ b/libguile/socket.h @@ -3,7 +3,7 @@ #ifndef SCM_SOCKET_H #define SCM_SOCKET_H -/* Copyright (C) 1995,1996,1997,2000,2001, 2004, 2005, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,2000,2001, 2004, 2005, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -52,7 +52,7 @@ SCM_API SCM scm_recv (SCM sockfd, SCM buff_or_size, SCM flags); SCM_API SCM scm_send (SCM sockfd, SCM message, SCM flags); SCM_API SCM scm_recvfrom (SCM sockfd, SCM buff_or_size, SCM flags, SCM offset, SCM length); SCM_API SCM scm_sendto (SCM sockfd, SCM message, SCM fam, SCM address, SCM args_and_flags); -SCM_API void scm_init_socket (void); +SCM_INTERNAL void scm_init_socket (void); /* Wrapping/unwrapping address objects. */ struct sockaddr; diff --git a/libguile/sort.h b/libguile/sort.h index b8bf4ce57..51f292a5c 100644 --- a/libguile/sort.h +++ b/libguile/sort.h @@ -3,7 +3,7 @@ #ifndef SCM_SORT_H #define SCM_SORT_H -/* Copyright (C) 1999,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1999,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -39,7 +39,7 @@ SCM_API SCM scm_stable_sort (SCM ls, SCM less); SCM_API SCM scm_stable_sort_x (SCM ls, SCM less); SCM_API SCM scm_sort_list (SCM ls, SCM less); SCM_API SCM scm_sort_list_x (SCM ls, SCM less); -SCM_API void scm_init_sort (void); +SCM_INTERNAL void scm_init_sort (void); #endif /* SCM_SORT_H */ diff --git a/libguile/srcprop.h b/libguile/srcprop.h index 87e5fde0f..a467aa34e 100644 --- a/libguile/srcprop.h +++ b/libguile/srcprop.h @@ -3,7 +3,7 @@ #ifndef SCM_SRCPROP_H #define SCM_SRCPROP_H -/* Copyright (C) 1995,1996,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -70,7 +70,7 @@ SCM_API SCM scm_set_source_property_x (SCM obj, SCM key, SCM datum); SCM_API SCM scm_source_properties (SCM obj); SCM_API SCM scm_set_source_properties_x (SCM obj, SCM props); SCM_API void scm_finish_srcprop (void); -SCM_API void scm_init_srcprop (void); +SCM_INTERNAL void scm_init_srcprop (void); #if SCM_ENABLE_DEPRECATED == 1 #define SRCBRKP(x) (scm_source_property_breakpoint_p (x)) diff --git a/libguile/srfi-13.h b/libguile/srfi-13.h index 833586adc..f8221ddc6 100644 --- a/libguile/srfi-13.h +++ b/libguile/srfi-13.h @@ -3,7 +3,7 @@ /* srfi-13.c --- SRFI-13 procedures for Guile * - * Copyright (C) 2001, 2004, 2006 Free Software Foundation, Inc. + * Copyright (C) 2001, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -113,7 +113,7 @@ SCM_API SCM scm_string_split (SCM s, SCM chr); SCM_API SCM scm_string_filter (SCM s, SCM char_pred, SCM start, SCM end); SCM_API SCM scm_string_delete (SCM s, SCM char_pred, SCM start, SCM end); -SCM_API void scm_init_srfi_13 (void); -SCM_API void scm_init_srfi_13_14 (void); +SCM_INTERNAL void scm_init_srfi_13 (void); +SCM_INTERNAL void scm_init_srfi_13_14 (void); #endif /* SCM_SRFI_13_H */ diff --git a/libguile/srfi-14.h b/libguile/srfi-14.h index 516c51044..ea8027aac 100644 --- a/libguile/srfi-14.h +++ b/libguile/srfi-14.h @@ -3,7 +3,7 @@ /* srfi-14.c --- SRFI-14 procedures for Guile * - * Copyright (C) 2001, 2004, 2006 Free Software Foundation, Inc. + * Copyright (C) 2001, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -106,7 +106,7 @@ SCM_API SCM scm_char_set_ascii; SCM_API SCM scm_char_set_empty; SCM_API SCM scm_char_set_full; -SCM_API void scm_srfi_14_compute_char_sets (void); -SCM_API void scm_init_srfi_14 (void); +SCM_INTERNAL void scm_srfi_14_compute_char_sets (void); +SCM_INTERNAL void scm_init_srfi_14 (void); #endif /* SCM_SRFI_14_H */ diff --git a/libguile/srfi-4.h b/libguile/srfi-4.h index 7abbac8a4..3c340d91e 100644 --- a/libguile/srfi-4.h +++ b/libguile/srfi-4.h @@ -2,7 +2,7 @@ #define SCM_SRFI_4_H /* srfi-4.c --- Homogeneous numeric vector datatypes. * - * Copyright (C) 2001, 2004, 2006 Free Software Foundation, Inc. + * Copyright (C) 2001, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -303,10 +303,10 @@ SCM_API double *scm_c64vector_writable_elements (SCM uvec, size_t *lenp, ssize_t *incp); -SCM_API SCM scm_i_generalized_vector_type (SCM vec); -SCM_API const char *scm_i_uniform_vector_tag (SCM uvec); -SCM_API scm_i_t_array_ref scm_i_uniform_vector_ref_proc (SCM uvec); -SCM_API scm_i_t_array_set scm_i_uniform_vector_set_proc (SCM uvec); +SCM_INTERNAL SCM scm_i_generalized_vector_type (SCM vec); +SCM_INTERNAL const char *scm_i_uniform_vector_tag (SCM uvec); +SCM_INTERNAL scm_i_t_array_ref scm_i_uniform_vector_ref_proc (SCM uvec); +SCM_INTERNAL scm_i_t_array_set scm_i_uniform_vector_set_proc (SCM uvec); #if SCM_ENABLE_DEPRECATED @@ -318,6 +318,6 @@ SCM_API size_t scm_uniform_element_size (SCM obj); #endif -SCM_API void scm_init_srfi_4 (void); +SCM_INTERNAL void scm_init_srfi_4 (void); #endif /* SCM_SRFI_4_H */ diff --git a/libguile/stackchk.h b/libguile/stackchk.h index 9a5c59f71..66582e929 100644 --- a/libguile/stackchk.h +++ b/libguile/stackchk.h @@ -3,7 +3,7 @@ #ifndef SCM_STACKCHK_H #define SCM_STACKCHK_H -/* Copyright (C) 1995,1996,1998,2000, 2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000, 2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -60,7 +60,7 @@ SCM_API int scm_stack_checking_enabled_p; SCM_API void scm_report_stack_overflow (void); SCM_API long scm_stack_size (SCM_STACKITEM *start); SCM_API void scm_stack_report (void); -SCM_API void scm_init_stackchk (void); +SCM_INTERNAL void scm_init_stackchk (void); #endif /* SCM_STACKCHK_H */ diff --git a/libguile/stacks.h b/libguile/stacks.h index e44bb1cdf..53633bc14 100644 --- a/libguile/stacks.h +++ b/libguile/stacks.h @@ -3,7 +3,7 @@ #ifndef SCM_STACKS_H #define SCM_STACKS_H -/* Copyright (C) 1995,1996,2000,2001, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -106,7 +106,7 @@ SCM_API SCM scm_frame_procedure_p (SCM frame); SCM_API SCM scm_frame_evaluating_args_p (SCM frame); SCM_API SCM scm_frame_overflow_p (SCM frame); -SCM_API void scm_init_stacks (void); +SCM_INTERNAL void scm_init_stacks (void); #endif /* SCM_STACKS_H */ diff --git a/libguile/stime.h b/libguile/stime.h index 52acc2f80..c64c60ea9 100644 --- a/libguile/stime.h +++ b/libguile/stime.h @@ -3,7 +3,7 @@ #ifndef SCM_STIME_H #define SCM_STIME_H -/* Copyright (C) 1995,1996,1997,1998,2000, 2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000, 2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -64,7 +64,7 @@ SCM_API SCM scm_tzset (void); SCM_API SCM scm_times (void); SCM_API SCM scm_strftime (SCM format, SCM stime); SCM_API SCM scm_strptime (SCM format, SCM string); -SCM_API void scm_init_stime (void); +SCM_INTERNAL void scm_init_stime (void); #endif /* SCM_STIME_H */ diff --git a/libguile/strings.h b/libguile/strings.h index f96457eb9..04ae552f9 100644 --- a/libguile/strings.h +++ b/libguile/strings.h @@ -3,7 +3,7 @@ #ifndef SCM_STRINGS_H #define SCM_STRINGS_H -/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2004, 2005, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2004, 2005, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -110,47 +110,47 @@ SCM_API SCM scm_makfromstrs (int argc, char **argv); /* internal accessor functions. Arguments must be valid. */ -SCM_API SCM scm_i_make_string (size_t len, char **datap); -SCM_API SCM scm_i_substring (SCM str, size_t start, size_t end); -SCM_API SCM scm_i_substring_read_only (SCM str, size_t start, size_t end); -SCM_API SCM scm_i_substring_shared (SCM str, size_t start, size_t end); -SCM_API SCM scm_i_substring_copy (SCM str, size_t start, size_t end); -SCM_API size_t scm_i_string_length (SCM str); -SCM_API const char *scm_i_string_chars (SCM str); -SCM_API char *scm_i_string_writable_chars (SCM str); -SCM_API void scm_i_string_stop_writing (void); +SCM_INTERNAL SCM scm_i_make_string (size_t len, char **datap); +SCM_INTERNAL SCM scm_i_substring (SCM str, size_t start, size_t end); +SCM_INTERNAL SCM scm_i_substring_read_only (SCM str, size_t start, size_t end); +SCM_INTERNAL SCM scm_i_substring_shared (SCM str, size_t start, size_t end); +SCM_INTERNAL SCM scm_i_substring_copy (SCM str, size_t start, size_t end); +SCM_INTERNAL size_t scm_i_string_length (SCM str); +SCM_API /* FIXME: not internal */ const char *scm_i_string_chars (SCM str); +SCM_API /* FIXME: not internal */ char *scm_i_string_writable_chars (SCM str); +SCM_INTERNAL void scm_i_string_stop_writing (void); /* internal functions related to symbols. */ -SCM_API SCM scm_i_make_symbol (SCM name, scm_t_bits flags, - unsigned long hash, SCM props); -SCM_API SCM +SCM_INTERNAL SCM scm_i_make_symbol (SCM name, scm_t_bits flags, + unsigned long hash, SCM props); +SCM_INTERNAL SCM scm_i_c_make_symbol (const char *name, size_t len, scm_t_bits flags, unsigned long hash, SCM props); -SCM_API SCM +SCM_INTERNAL SCM scm_i_c_take_symbol (char *name, size_t len, scm_t_bits flags, unsigned long hash, SCM props); -SCM_API const char *scm_i_symbol_chars (SCM sym); -SCM_API size_t scm_i_symbol_length (SCM sym); -SCM_API SCM scm_i_symbol_substring (SCM sym, size_t start, size_t end); +SCM_INTERNAL const char *scm_i_symbol_chars (SCM sym); +SCM_INTERNAL size_t scm_i_symbol_length (SCM sym); +SCM_INTERNAL SCM scm_i_symbol_substring (SCM sym, size_t start, size_t end); /* internal GC functions. */ -SCM_API SCM scm_i_string_mark (SCM str); -SCM_API SCM scm_i_stringbuf_mark (SCM buf); -SCM_API SCM scm_i_symbol_mark (SCM buf); -SCM_API void scm_i_string_free (SCM str); -SCM_API void scm_i_stringbuf_free (SCM buf); -SCM_API void scm_i_symbol_free (SCM sym); +SCM_INTERNAL SCM scm_i_string_mark (SCM str); +SCM_INTERNAL SCM scm_i_stringbuf_mark (SCM buf); +SCM_INTERNAL SCM scm_i_symbol_mark (SCM buf); +SCM_INTERNAL void scm_i_string_free (SCM str); +SCM_INTERNAL void scm_i_stringbuf_free (SCM buf); +SCM_INTERNAL void scm_i_symbol_free (SCM sym); /* internal utility functions. */ -SCM_API char **scm_i_allocate_string_pointers (SCM list); -SCM_API void scm_i_free_string_pointers (char **pointers); -SCM_API void scm_i_get_substring_spec (size_t len, - SCM start, size_t *cstart, - SCM end, size_t *cend); -SCM_API SCM scm_i_take_stringbufn (char *str, size_t len); +SCM_INTERNAL char **scm_i_allocate_string_pointers (SCM list); +SCM_INTERNAL void scm_i_free_string_pointers (char **pointers); +SCM_INTERNAL void scm_i_get_substring_spec (size_t len, + SCM start, size_t *cstart, + SCM end, size_t *cend); +SCM_INTERNAL SCM scm_i_take_stringbufn (char *str, size_t len); /* deprecated stuff */ @@ -167,7 +167,7 @@ SCM_API size_t scm_i_deprecated_string_length (SCM str); #endif -SCM_API void scm_init_strings (void); +SCM_INTERNAL void scm_init_strings (void); #endif /* SCM_STRINGS_H */ diff --git a/libguile/strorder.h b/libguile/strorder.h index 51168e05f..17118634e 100644 --- a/libguile/strorder.h +++ b/libguile/strorder.h @@ -3,7 +3,7 @@ #ifndef SCM_STRORDER_H #define SCM_STRORDER_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -36,7 +36,7 @@ SCM_API SCM scm_string_ci_less_p (SCM s1, SCM s2); SCM_API SCM scm_string_ci_leq_p (SCM s1, SCM s2); SCM_API SCM scm_string_ci_gr_p (SCM s1, SCM s2); SCM_API SCM scm_string_ci_geq_p (SCM s1, SCM s2); -SCM_API void scm_init_strorder (void); +SCM_INTERNAL void scm_init_strorder (void); #endif /* SCM_STRORDER_H */ diff --git a/libguile/strports.h b/libguile/strports.h index 2ca5fb572..58ca71f57 100644 --- a/libguile/strports.h +++ b/libguile/strports.h @@ -3,7 +3,7 @@ #ifndef SCM_STRPORTS_H #define SCM_STRPORTS_H -/* Copyright (C) 1995,1996,2000,2001,2002, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001,2002, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -55,7 +55,7 @@ SCM_API SCM scm_c_eval_string (const char *expr); SCM_API SCM scm_c_eval_string_in_module (const char *expr, SCM module); SCM_API SCM scm_eval_string (SCM string); SCM_API SCM scm_eval_string_in_module (SCM string, SCM module); -SCM_API void scm_init_strports (void); +SCM_INTERNAL void scm_init_strports (void); #endif /* SCM_STRPORTS_H */ diff --git a/libguile/struct.h b/libguile/struct.h index 4b263d2e5..f00a8d844 100644 --- a/libguile/struct.h +++ b/libguile/struct.h @@ -3,7 +3,7 @@ #ifndef SCM_STRUCT_H #define SCM_STRUCT_H -/* Copyright (C) 1995,1997,1999,2000,2001, 2006, 2007 Free Software Foundation, Inc. +/* Copyright (C) 1995,1997,1999,2000,2001, 2006, 2007, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -79,7 +79,7 @@ SCM_API SCM scm_struct_table; #define SCM_STRUCT_GC_CHAIN(X) SCM_CELL_OBJECT_3 (X) #define SCM_SET_STRUCT_GC_CHAIN(X, Y) SCM_SET_CELL_OBJECT_3 (X, Y) -SCM_API SCM scm_i_structs_to_free; +SCM_INTERNAL SCM scm_i_structs_to_free; @@ -95,7 +95,7 @@ SCM_API SCM scm_struct_vtable_p (SCM x); SCM_API SCM scm_make_struct (SCM vtable, SCM tail_array_size, SCM init); SCM_API SCM scm_make_vtable (SCM fields, SCM printer); SCM_API SCM scm_make_vtable_vtable (SCM extra_fields, SCM tail_array_size, SCM init); -SCM_API SCM scm_i_struct_equalp (SCM s1, SCM s2); +SCM_INTERNAL SCM scm_i_struct_equalp (SCM s1, SCM s2); SCM_API SCM scm_struct_ref (SCM handle, SCM pos); SCM_API SCM scm_struct_set_x (SCM handle, SCM pos, SCM val); SCM_API SCM scm_struct_vtable (SCM handle); @@ -106,7 +106,7 @@ SCM_API SCM scm_struct_vtable_name (SCM vtable); SCM_API SCM scm_set_struct_vtable_name_x (SCM vtable, SCM name); SCM_API void scm_print_struct (SCM exp, SCM port, scm_print_state *); SCM_API void scm_struct_prehistory (void); -SCM_API void scm_init_struct (void); +SCM_INTERNAL void scm_init_struct (void); #endif /* SCM_STRUCT_H */ diff --git a/libguile/symbols.h b/libguile/symbols.h index f70d65578..c2dc18363 100644 --- a/libguile/symbols.h +++ b/libguile/symbols.h @@ -3,7 +3,7 @@ #ifndef SCM_SYMBOLS_H #define SCM_SYMBOLS_H -/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2003, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998,2000,2001, 2003, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -61,11 +61,11 @@ SCM_API SCM scm_take_locale_symboln (char *sym, size_t len); /* internal functions. */ -SCM_API unsigned long scm_i_hash_symbol (SCM obj, unsigned long n, +SCM_INTERNAL unsigned long scm_i_hash_symbol (SCM obj, unsigned long n, void *closure); -SCM_API void scm_symbols_prehistory (void); -SCM_API void scm_init_symbols (void); +SCM_INTERNAL void scm_symbols_prehistory (void); +SCM_INTERNAL void scm_init_symbols (void); #endif /* SCM_SYMBOLS_H */ diff --git a/libguile/threads.h b/libguile/threads.h index 8abe452bb..dea1a8e5d 100644 --- a/libguile/threads.h +++ b/libguile/threads.h @@ -137,23 +137,23 @@ SCM_API SCM scm_spawn_thread (scm_t_catch_body body, void *body_data, SCM_API void *scm_without_guile (void *(*func)(void *), void *data); SCM_API void *scm_with_guile (void *(*func)(void *), void *data); -SCM_API void *scm_i_with_guile_and_parent (void *(*func)(void *), void *data, - SCM parent); +SCM_INTERNAL void *scm_i_with_guile_and_parent (void *(*func)(void *), + void *data, SCM parent); extern int scm_i_thread_go_to_sleep; -void scm_i_thread_put_to_sleep (void); -void scm_i_thread_wake_up (void); -void scm_i_thread_invalidate_freelists (void); +SCM_INTERNAL void scm_i_thread_put_to_sleep (void); +SCM_INTERNAL void scm_i_thread_wake_up (void); +SCM_INTERNAL void scm_i_thread_invalidate_freelists (void); void scm_i_thread_sleep_for_gc (void); -void scm_threads_prehistory (SCM_STACKITEM *); -void scm_threads_init_first_thread (void); -SCM_API void scm_threads_mark_stacks (void); -SCM_API void scm_init_threads (void); -SCM_API void scm_init_thread_procs (void); -SCM_API void scm_init_threads_default_dynamic_state (void); +SCM_INTERNAL void scm_threads_prehistory (SCM_STACKITEM *); +SCM_INTERNAL void scm_threads_init_first_thread (void); +SCM_INTERNAL void scm_threads_mark_stacks (void); +SCM_INTERNAL void scm_init_threads (void); +SCM_INTERNAL void scm_init_thread_procs (void); +SCM_INTERNAL void scm_init_threads_default_dynamic_state (void); #define SCM_THREAD_SWITCHING_CODE \ @@ -211,7 +211,7 @@ SCM_API scm_i_pthread_key_t scm_i_thread_key; #define scm_i_set_last_debug_frame(f) \ (SCM_I_CURRENT_THREAD->last_debug_frame = (f)) -SCM_API scm_i_pthread_mutex_t scm_i_misc_mutex; +SCM_INTERNAL scm_i_pthread_mutex_t scm_i_misc_mutex; /* Convenience functions for working with the pthread API in guile mode. diff --git a/libguile/throw.h b/libguile/throw.h index 84b0aa9e4..3cd557285 100644 --- a/libguile/throw.h +++ b/libguile/throw.h @@ -3,7 +3,7 @@ #ifndef SCM_THROW_H #define SCM_THROW_H -/* Copyright (C) 1995,1996,1998,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -94,7 +94,7 @@ SCM_API SCM scm_lazy_catch (SCM tag, SCM thunk, SCM handler); SCM_API SCM scm_ithrow (SCM key, SCM args, int noreturn); SCM_API SCM scm_throw (SCM key, SCM args); -SCM_API void scm_init_throw (void); +SCM_INTERNAL void scm_init_throw (void); #endif /* SCM_THROW_H */ diff --git a/libguile/unif.h b/libguile/unif.h index 1ce3a8fa1..a09bfc921 100644 --- a/libguile/unif.h +++ b/libguile/unif.h @@ -3,7 +3,7 @@ #ifndef SCM_UNIF_H #define SCM_UNIF_H -/* Copyright (C) 1995,1996,1997,1999,2000,2001, 2004, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1999,2000,2001, 2004, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -162,9 +162,9 @@ SCM_API scm_t_bits scm_i_tc16_enclosed_array; #define SCM_I_ARRAY_DIMS(a) \ ((scm_t_array_dim *)((char *) SCM_I_ARRAY_MEM (a) + sizeof (scm_i_t_array))) -SCM_API SCM scm_i_make_ra (int ndim, int enclosed); -SCM_API SCM scm_i_cvref (SCM v, size_t p, int enclosed); -SCM_API SCM scm_i_read_array (SCM port, int c); +SCM_INTERNAL SCM scm_i_make_ra (int ndim, int enclosed); +SCM_INTERNAL SCM scm_i_cvref (SCM v, size_t p, int enclosed); +SCM_INTERNAL SCM scm_i_read_array (SCM port, int c); /* deprecated. */ @@ -183,7 +183,7 @@ SCM_API int scm_raprin1 (SCM exp, SCM port, scm_print_state *pstate); #endif -SCM_API void scm_init_unif (void); +SCM_INTERNAL void scm_init_unif (void); #endif /* SCM_UNIF_H */ diff --git a/libguile/values.h b/libguile/values.h index bc603c16b..f05ce9f8f 100644 --- a/libguile/values.h +++ b/libguile/values.h @@ -3,7 +3,7 @@ #ifndef SCM_VALUES_H #define SCM_VALUES_H -/* Copyright (C) 2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -30,7 +30,7 @@ SCM_API SCM scm_values_vtable; && scm_is_eq (scm_struct_vtable (x), scm_values_vtable)) SCM_API SCM scm_values (SCM args); -SCM_API void scm_init_values (void); +SCM_INTERNAL void scm_init_values (void); #endif /* SCM_VALUES_H */ diff --git a/libguile/variable.h b/libguile/variable.h index 2f2e1a5c9..3f6398b9c 100644 --- a/libguile/variable.h +++ b/libguile/variable.h @@ -3,7 +3,7 @@ #ifndef SCM_VARIABLE_H #define SCM_VARIABLE_H -/* Copyright (C) 1995,1996,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -43,9 +43,9 @@ SCM_API SCM scm_variable_ref (SCM var); SCM_API SCM scm_variable_set_x (SCM var, SCM val); SCM_API SCM scm_variable_bound_p (SCM var); -SCM_API void scm_i_variable_print (SCM var, SCM port, scm_print_state *pstate); +SCM_INTERNAL void scm_i_variable_print (SCM var, SCM port, scm_print_state *pstate); -SCM_API void scm_init_variable (void); +SCM_INTERNAL void scm_init_variable (void); #endif /* SCM_VARIABLE_H */ diff --git a/libguile/vectors.h b/libguile/vectors.h index b1def0689..28a576c5c 100644 --- a/libguile/vectors.h +++ b/libguile/vectors.h @@ -3,7 +3,7 @@ #ifndef SCM_VECTORS_H #define SCM_VECTORS_H -/* Copyright (C) 1995,1996,1998,2000,2001,2002,2004,2005, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,2000,2001,2002,2004,2005, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -82,8 +82,8 @@ SCM_API void scm_generalized_vector_get_handle (SCM vec, #define SCM_I_VECTOR_WELTS(x) ((SCM *) SCM_CELL_WORD_1 (x)) #define SCM_I_VECTOR_LENGTH(x) (((size_t) SCM_CELL_WORD_0 (x)) >> 8) -SCM_API void scm_i_vector_free (SCM vec); -SCM_API SCM scm_i_vector_equal_p (SCM x, SCM y); +SCM_INTERNAL void scm_i_vector_free (SCM vec); +SCM_INTERNAL SCM scm_i_vector_equal_p (SCM x, SCM y); /* Weak vectors share implementation details with ordinary vectors, but no one else should. @@ -99,9 +99,9 @@ SCM_API SCM scm_i_vector_equal_p (SCM x, SCM y); #define SCM_I_WVECT_GC_CHAIN(x) (SCM_CELL_OBJECT_3 (x)) #define SCM_I_SET_WVECT_GC_CHAIN(x, o) (SCM_SET_CELL_OBJECT_3 ((x), (o))) -SCM_API SCM scm_i_allocate_weak_vector (scm_t_bits type, SCM size, SCM fill); +SCM_INTERNAL SCM scm_i_allocate_weak_vector (scm_t_bits type, SCM size, SCM fill); -SCM_API void scm_init_vectors (void); +SCM_INTERNAL void scm_init_vectors (void); #endif /* SCM_VECTORS_H */ diff --git a/libguile/version.h.in b/libguile/version.h.in index 1d8f27750..b565efd96 100644 --- a/libguile/version.h.in +++ b/libguile/version.h.in @@ -3,7 +3,7 @@ #ifndef SCM_VERSION_H #define SCM_VERSION_H -/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1998,1999,2000,2001, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -35,7 +35,7 @@ SCM_API SCM scm_minor_version (void); SCM_API SCM scm_micro_version (void); SCM_API SCM scm_effective_version (void); SCM_API SCM scm_version (void); -SCM_API void scm_init_version (void); +SCM_INTERNAL void scm_init_version (void); #endif /* SCM_VERSION_H */ diff --git a/libguile/vports.h b/libguile/vports.h index c25f90f45..365303bc1 100644 --- a/libguile/vports.h +++ b/libguile/vports.h @@ -3,7 +3,7 @@ #ifndef SCM_VPORTS_H #define SCM_VPORTS_H -/* Copyright (C) 1995,1996,2000, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -27,7 +27,7 @@ SCM_API SCM scm_make_soft_port (SCM pv, SCM modes); -SCM_API void scm_init_vports (void); +SCM_INTERNAL void scm_init_vports (void); #endif /* SCM_VPORTS_H */ diff --git a/libguile/weaks.h b/libguile/weaks.h index bf854d558..34c44a97a 100644 --- a/libguile/weaks.h +++ b/libguile/weaks.h @@ -3,7 +3,7 @@ #ifndef SCM_WEAKS_H #define SCM_WEAKS_H -/* Copyright (C) 1995,1996,2000,2001, 2003, 2006 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,2000,2001, 2003, 2006, 2008 Free Software Foundation, Inc. * * This library is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public @@ -62,13 +62,13 @@ SCM_API SCM scm_make_doubly_weak_alist_vector (SCM k); SCM_API SCM scm_weak_key_alist_vector_p (SCM x); SCM_API SCM scm_weak_value_alist_vector_p (SCM x); SCM_API SCM scm_doubly_weak_alist_vector_p (SCM x); -SCM_API SCM scm_init_weaks_builtins (void); -SCM_API void scm_init_weaks (void); +SCM_INTERNAL SCM scm_init_weaks_builtins (void); +SCM_INTERNAL void scm_init_weaks (void); -SCM_API void scm_i_init_weak_vectors_for_gc (void); -SCM_API void scm_i_mark_weak_vector (SCM w); -SCM_API int scm_i_mark_weak_vectors_non_weaks (void); -SCM_API void scm_i_remove_weaks_from_weak_vectors (void); +SCM_INTERNAL void scm_i_init_weak_vectors_for_gc (void); +SCM_INTERNAL void scm_i_mark_weak_vector (SCM w); +SCM_INTERNAL int scm_i_mark_weak_vectors_non_weaks (void); +SCM_INTERNAL void scm_i_remove_weaks_from_weak_vectors (void); #endif /* SCM_WEAKS_H */ diff --git a/test-suite/ChangeLog b/test-suite/ChangeLog index 5f9714281..dca61413d 100644 --- a/test-suite/ChangeLog +++ b/test-suite/ChangeLog @@ -1,3 +1,8 @@ +2008-05-31 Ludovic Courtès + + * standalone/test-gh.c (string_equal): Use `scm_c_string_length ()' + instead of `scm_i_string_length ()'. + 2008-05-15 Julian Graham * tests/srfi-18.test: New file. diff --git a/test-suite/standalone/test-gh.c b/test-suite/standalone/test-gh.c index 4d91cce41..b273b4499 100644 --- a/test-suite/standalone/test-gh.c +++ b/test-suite/standalone/test-gh.c @@ -31,7 +31,7 @@ string_equal (SCM str, char *lit) int len = strlen (lit); int result; - result = ((scm_i_string_length (str) == len) + result = ((scm_c_string_length (str) == len) && (!memcmp (scm_i_string_chars (str), lit, len))); scm_remember_upto_here_1 (str); return result; -- 2.20.1