1
Fork 0
mirror of https://git.savannah.gnu.org/git/guile.git synced 2025-05-06 23:50:18 +02:00
Commit graph

6599 commits

Author SHA1 Message Date
Rob Browning
aa5af3d1be * ChangeLog: moved from ../libltdl. 2002-10-05 04:54:50 +00:00
Rob Browning
cf736a072d * raw-ltdl.h: guile's modified version of the upstream ltdl.h. 2002-10-05 04:52:02 +00:00
Rob Browning
344d7170d7 * raw-ltdl.c: guile's modified version of the upstream ltdl.c.
* raw-ltdl.c: Remove custom realloc. (#define rpl_realloc
realloc).  You can't define realloc like this unless you also
define malloc.  This is a quick hack for now; we may want
something cleaner later.
(memcpy): coerce ptrs to (char *) before copying characters
through them -- I can't recall for sure, but I believe this was
causing an overrun error at times.
(realloc): commented out -- as mentioned above, you can't define
your own malloc unless you know enough about the malloc in use to
be able to tell how big the src ptr is.  The disabled code
incorrectly used the *destination* ptr to decide how much to copy.
This sometimes results in out-of-bound accesses which cause
segfaults.
(tryall_dlopen_module): check to be sure (dirname_len > 0) before
testing first character against '/'.
(try_dlopen): check for feof(file) in read loop -- otherwise
infloop?
(scm_lt_dlopenext): remove unused variable file_found.
(LT_EOS_CHAR): moved here from guile-ltdl.h.
2002-10-05 04:51:55 +00:00
Rob Browning
ac7cc4628d * guile-ltdl.h: main header file for guile's internal
libguile-ltdl.

* raw-ltdl.c: Remove custom realloc. (#define rpl_realloc
realloc).  You can't define realloc like this unless you also
define malloc.  This is a quick hack for now; we may want
something cleaner later.
(memcpy): coerce ptrs to (char *) before copying characters
through them -- I can't recall for sure, but I believe this was
causing an overrun error at times.
(realloc): commented out -- as mentioned above, you can't define
your own malloc unless you know enough about the malloc in use to
be able to tell how big the src ptr is.  The disabled code
incorrectly used the *destination* ptr to decide how much to copy.
This sometimes results in out-of-bound accesses which cause
segfaults.
(tryall_dlopen_module): check to be sure (dirname_len > 0) before
testing first character against '/'.
(try_dlopen): check for feof(file) in read loop -- otherwise
infloop?
(scm_lt_dlopenext): remove unused variable file_found.
(LT_EOS_CHAR): moved here from guile-ltdl.h.
2002-10-05 04:51:36 +00:00
Rob Browning
c29fbdf231 * guile-ltdl.c: main source file for libguile-ltdl -- #includes
raw-ltdl.c and raw-ldtl.h directly.  See README.
2002-10-05 04:51:30 +00:00
Rob Browning
f64d164b1b * guile-ltdl.c: main source file for libguile-ltdl -- #includes
raw-ltdl.c and raw-ldtl.h directly.  See README.

* README: moved from ../libltdl.
2002-10-05 04:51:24 +00:00
Rob Browning
46229a272f * Makefile.am: build new libguile-ltdl.
* upstream/Makefile.am: new file.
2002-10-05 04:51:19 +00:00
Rob Browning
250aecfecf * ChangeLog: moved from ../libltdl. 2002-10-05 04:51:12 +00:00
Rob Browning
f4b028e3d8 * COPYING.LIB: moved from ../libltdl. 2002-10-05 04:51:06 +00:00
Rob Browning
b6b42411cf * upstream/ltdl.h: upstream source. 2002-10-05 04:46:57 +00:00
Rob Browning
d15601668c * upstream/ltdl.c: upstream source. 2002-10-05 04:46:51 +00:00
Rob Browning
a834f6d508 * upstream/Makefile.am: new file. 2002-10-05 04:46:44 +00:00
Rob Browning
7971b3b82d *** empty log message *** 2002-10-05 04:45:15 +00:00
Rob Browning
ac48c7193e *** empty log message *** 2002-10-05 04:33:35 +00:00
Rob Browning
20bf9a3cfe * numbers.c (s_scm_integer_expt): (expt 0 1) should be 1. 2002-10-05 04:27:35 +00:00
Rob Browning
9bc548798d *** empty log message *** 2002-10-05 04:21:04 +00:00
Rob Browning
46f2c0f148 * tests/numbers.test ("expt"): add tests. 2002-10-05 04:12:23 +00:00
Rob Browning
201e7da791 * summarize-guile-TODO (as-leaf): make #\: a char-set. 2002-10-05 04:11:51 +00:00
Rob Browning
0ad7cc4f97 * boot-9.scm (expt): switch if sense and use negative? rather than
>= 0.
2002-10-05 04:10:48 +00:00
Marius Vollmer
497092c9d1 *** empty log message *** 2002-10-04 14:13:51 +00:00
Marius Vollmer
2fbc8609b2 * scmsigs.h (scm_sigaction_for_thread): New prototype.
* scmsigs.c (got_signal): Removed.
(signal_handler_cells, signal_handler_threads): New.
(take_signal): Queue the cell of the signal for the specified
thread.  Reset the signal handler on systems that don't have
sigaction.
(sys_deliver_signals): Removed.
(close_1): New.
(scm_sigaction_for_thread): Renamed from scm_sigaction and
extended to also set the thread of a signal and allocate a cell
for it.  Keep the Scheme name "sigaction".  Check that signum is
within range.  Also, use SCM_VECTOR_REF instead of SCM_VELTS.
(scm_sigaction): Implement in terms of scm_sigaction_for_thread.
(scm_init_scmsigs): Allocate signal_handler_cells and
signal_handler_threads vectors.
2002-10-04 14:13:26 +00:00
Marius Vollmer
e3c9bec302 * __scm.h (scm_asyncs_pending_p): Removed.
(SCM_ASYNC_CLICK): Check scm_active_asyncs instead of
scm_asyncs_pending_p.
2002-10-04 13:49:29 +00:00
Marius Vollmer
2d3179db77 Removed GUILE_OLD_ASYNC_CLICK code. Reorganized so that system asnycs
and user asyncs are separated.  Reimplemented system asyncs to work
per-thread.
2002-10-04 13:49:13 +00:00
Marius Vollmer
5b900ecff2 * async.h (scm_asyncs_pending, scm_set_tick_rate,
scm_set_switch_rate, scm_system_async_mark_from_signal_handler):
Removed prototypes.
(scm_i_queue_async_cell): New.
2002-10-04 13:47:35 +00:00
Marius Vollmer
2592c4c765 (scm_init_gc): Do not use scm_system_async. 2002-10-04 13:42:43 +00:00
Marius Vollmer
3538c2b2a6 *** empty log message *** 2002-10-04 13:09:45 +00:00
Marius Vollmer
f823f7e774 (top-repl): Use "1" instead of "%deliver-signals" to limit the signal
stack.
2002-10-04 13:09:30 +00:00
Marius Vollmer
61c95a4992 (scm_system_async_mark_for_thread): New prototype. 2002-10-03 23:00:58 +00:00
Marius Vollmer
a6b54e30d3 Removed GUILE_OLD_ASYNC_CLICK code. 2002-10-03 22:59:08 +00:00
Marius Vollmer
d4719ab892 * root.h (scm_root_state): Added new "active_asyncs" slot.
* root.c (scm_make_root): Initialize it to SCM_EOL.
2002-10-03 22:56:52 +00:00
Marius Vollmer
3b1df92480 (scm_root_state): Added new "active_asyncs" slot. 2002-10-03 22:54:25 +00:00
Marius Vollmer
9997213b7d * coop-defs.h (coop_t): Added new "handle" slot.
* coop-threads.c (all_threads, scm_current_thread,
scm_all_threads, scm_i_thread_root): New.
(scm_threads_init): Add main thread to all_threads.
(scheme_launch_thread): Remove thread from all_threads when it
terminates.
(scm_call_with_new_thread): Initialize handle slot of coop_t
structure and add new thread to all_threads.
(scm_spawn_thread): Likewise.
2002-10-03 22:53:17 +00:00
Marius Vollmer
f7eca35dfe * threads.h (scm_current_thread, scm_all_threads): New prototypes.
* threads.c (scm_current_thread, scm_all_threads): Register as
primitives.
2002-10-03 22:48:15 +00:00
Marius Vollmer
8e583c6e1b Use scm_lt_ prefix for libltdl functions. 2002-10-03 22:44:48 +00:00
Marius Vollmer
4e250dedc2 *** empty log message *** 2002-10-03 22:27:28 +00:00
Neil Jerram
480fa28d20 Refer to provided? rather than the deprecated feature?. 2002-10-03 22:23:43 +00:00
Neil Jerram
66add4ebf5 Refer to provided? rather than the deprecated feature?. 2002-10-03 22:16:17 +00:00
Marius Vollmer
d2184983c7 New file. 2002-10-03 22:10:00 +00:00
Marius Vollmer
99fd355aba *** empty log message *** 2002-10-03 22:02:27 +00:00
Marius Vollmer
abd2bc1861 Use AC_LIBLTDL_CONVENIENCE instead of AC_LIBLTDL_INSTALLABLE. 2002-10-03 22:02:14 +00:00
Marius Vollmer
c70f1244b0 Removed libltdl. 2002-10-03 21:58:30 +00:00
Marius Vollmer
65ded5d06c New file. 2002-10-03 21:57:42 +00:00
Marius Vollmer
6c26e47ba9 Added locally hacked copy of libltdl. 2002-10-03 21:57:09 +00:00
Marius Vollmer
8734ce02b1 *** empty log message *** 2002-10-03 15:30:21 +00:00
Marius Vollmer
ba20db9bc1 *** empty log message *** 2002-10-03 15:25:12 +00:00
Marius Vollmer
878caca5e3 (How guile-snarf works): Updated.
(Writing your own snarfing macros): New.
2002-10-03 15:25:04 +00:00
Neil Jerram
c936bede42 Doc updates, including contribution from Ian Sheldon. 2002-09-25 00:06:38 +00:00
Gary Houston
3553e1d1f0 * inline.h (scm_double_cell): prevent reordering of statements
with any following code (for GCC 3 strict-aliasing).
	* numbers.c (scm_make_real), num2float.i.c (FLOAT2NUM): removed
	the earlier version of the reordering prevention.
2002-09-24 22:21:01 +00:00
Neil Jerram
c15030bebf Improvements to hook docs. 2002-09-19 20:39:41 +00:00
Han-Wen Nienhuys
4ad0814a57 (scm_double_cell): move SET_GCMARK set out of if body. 2002-09-19 11:14:46 +00:00