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

3681 commits

Author SHA1 Message Date
Dirk Herrmann
7fa93bf859 Use SCM_EQ_P to compare scheme objects, use SCM_CELL_WORD_1 for raw data. 2000-03-31 13:34:30 +00:00
Dirk Herrmann
74a16888eb Change type of member 'stream' in scm_port from SCM to scm_bits_t. 2000-03-31 07:56:40 +00:00
Mikael Djurfeldt
6a87835719 *** empty log message *** 2000-03-30 23:32:56 +00:00
Mikael Djurfeldt
5c90be5282 * coop-defs.h (struct coop_t): Added `sto'-field again because of
binary compatibility---let's remove it next time we alter some
major structure.
2000-03-30 23:32:45 +00:00
Mikael Djurfeldt
b6cc0ef66d *** empty log message *** 2000-03-30 23:23:28 +00:00
Mikael Djurfeldt
6219b5eb41 * coop.c (coop_quitting_p, coop_cond_create, coop_mutex_create,
coop_mother, coop_child): New variables.
(mother): New function.
(coop_create): New thread spawning mechanism which uses a "mother
thread".  The "dummy" pthreads aren't healthy enough to give birth
to new threads since Linux threads thinks they are asleep.
2000-03-30 23:23:10 +00:00
Mikael Djurfeldt
2f511ab1aa * coop-defs.h (struct coop_t): Removed dummy_mutex.
* coop-defs.h, coop-threads.c (struct coop_t): Eliminate
`sto'-field when GUILE_PTHREAD_COMPAT is enabled.
2000-03-30 23:22:50 +00:00
Mikael Djurfeldt
21aab5c929 * coop-defs.h, coop-threads.c (struct coop_t): Eliminate
`sto'-field when GUILE_PTHREAD_COMPAT is enabled.
2000-03-30 23:18:39 +00:00
Dirk Herrmann
843524cc20 Fix some typing issues wrt SCM/scm_bits_t. 2000-03-30 09:15:15 +00:00
Dirk Herrmann
fbd485ba49 Don't use C operators == and != to compare SCM values. 2000-03-29 16:22:57 +00:00
Mikael Djurfeldt
91163914cf *** empty log message *** 2000-03-29 11:02:44 +00:00
Mikael Djurfeldt
0208baa0d9 *** empty log message *** 2000-03-29 10:52:26 +00:00
Mikael Djurfeldt
7a8e7a6ce2 * coop-threads.c (scm_call_with_new_thread, scm_spawn_thread,
scm_make_mutex, scm_make_condition_variable): Cast data to
scm_bits_t in SCM_SET_CELL_WORD and SCM_NEWSMOB macros.
2000-03-29 10:52:07 +00:00
Mikael Djurfeldt
64e3bf6c38 *** empty log message *** 2000-03-29 10:44:28 +00:00
Mikael Djurfeldt
e4d2166f80 * configure.in: Enable workaround for COOP-linuxthreads
compatibility on Linux systems.
2000-03-29 10:44:13 +00:00
Mikael Djurfeldt
ac1aca3515 * coop.c (coop_create): Set specific' field, not data' to NULL. 2000-03-29 10:43:18 +00:00
Dirk Herrmann
941132492e Access smob data with SCM_{SET_}?CELL_TYPE or SCM_{SET_}?WORD_[1-3]. 2000-03-29 09:17:25 +00:00
Mikael Djurfeldt
1978b33ef8 *** empty log message *** 2000-03-29 01:58:30 +00:00
Mikael Djurfeldt
31bc6de36a * threads.c (scm_init_threads): Pass 0 size to scm_make_smob_type
for scm_tc16_thread.  As the current COOP threads are written, GC
is not supposed to manage storage for threads.
2000-03-29 01:58:17 +00:00
Mikael Djurfeldt
ef18914a94 * error.c (scm_error): Don't try to throw an error if
scm_gc_heap_lock is true.
2000-03-29 01:57:54 +00:00
Mikael Djurfeldt
f85a9bcf5f * coop.c (coop_finish): New function. Called at exit.
(coop_aborthelp): Free thread structures when threads die.
Finished LinuxThreads compatibility support => COOP threads now
mesh with LinuxThreads.
2000-03-29 01:57:40 +00:00
Mikael Djurfeldt
0e551780ec * coop-threads.c (scm_call_with_new_thread, scm_spawn_thread):
Changed SETCDR --> SET_CELL_WORD_1.

* coop-threads.c (scheme_launch_thread): Set word 1 of handle to 0
when thread dies.
2000-03-29 01:57:25 +00:00
Mikael Djurfeldt
ad1a269029 Removed definition of GUILE_PTHREAD_COMPAT inside commentary 2000-03-29 01:57:12 +00:00
Mikael Djurfeldt
ed65453e53 * configure.in: Enable workaround for COOP-linuxthreads
compatibility on Linux systems (currently disabled).
2000-03-29 01:54:12 +00:00
Mikael Djurfeldt
25f457c0e2 * acconfig.h (GUILE_PTHREAD_COMPAT): New config variable. 2000-03-29 01:52:19 +00:00
Dirk Herrmann
dd039d6dc6 * New macro SCM_TRUE_P.
* Use SCM_EQ_P to compare SCM values.
2000-03-29 01:15:56 +00:00
Dirk Herrmann
8b3bda2058 Cleaned up continuation data access. 2000-03-28 17:13:40 +00:00
Dirk Herrmann
3210f49a6f Use SCM_{SET_}?CELL_WORD_[01] to access length and char * fields
of strings and symbols.
2000-03-28 10:16:16 +00:00
Dirk Herrmann
2d67e39007 Use SCM_{SET_}?CELL_TYPE when accessing the type entry of a cell. 2000-03-27 22:43:37 +00:00
Dirk Herrmann
76a369d95d * SCM_C[AD]R and SCM_SETC[AD]R use SCM_{SET_}?OBJECT now.
* Moved SCM_GCCDR from pairs.h to tags.h.
2000-03-27 12:42:16 +00:00
Dirk Herrmann
2549a7096d Moved some cell related definitions from tags.h and pairs.h to gc.h. 2000-03-26 10:08:52 +00:00
Dirk Herrmann
8d3356e761 * Allow to activate strict compile time type checking by defining
the macro SCM_STRICT_TYPING.
* Defined SCM_EQ_P as a macro equivalent for eq?.
2000-03-25 08:26:38 +00:00
Dirk Herrmann
96f6f4aebf Removed use of SCM_POINTERS_MUNGED. 2000-03-25 07:56:53 +00:00
Dirk Herrmann
0cbaaf0b15 Added a set of low level macros for accessing cell entries. 2000-03-24 08:55:14 +00:00
Dirk Herrmann
d87d36506d Added a first attempt for a description of the low level API. 2000-03-24 00:16:26 +00:00
Jim Blandy
33cd325ffb *** empty log message *** 2000-03-23 23:47:04 +00:00
Mikael Djurfeldt
2f9055eac4 *** empty log message *** 2000-03-23 13:06:50 +00:00
Mikael Djurfeldt
d3952a0527 * continuations.c (scm_make_cont): Removed cast of size_t into
long.
2000-03-23 13:06:36 +00:00
Mikael Djurfeldt
7284d58470 *** empty log message *** 2000-03-23 13:04:50 +00:00
Mikael Djurfeldt
b191741530 * tags.h: Disabled definition of SCM_VOIDP_TEST. 2000-03-23 13:04:42 +00:00
Mikael Djurfeldt
61abe7cf63 * symbols.h (SCM_SETCHARS): Cast second arg into SCM. 2000-03-23 13:04:35 +00:00
Mikael Djurfeldt
c67baafdd1 * gc.c (scm_mark_locations): Changed * (SCM **) X --> * (SCM *) X
in order to obtain a value of type SCM.
(scm_cellp): Updated with new changes to scm_mark_locations.
2000-03-23 13:04:27 +00:00
Mikael Djurfeldt
50c65018d3 * continuations.h (SCM_SETJMPBUF): Cast second arg into SCM. 2000-03-23 13:04:19 +00:00
Jim Blandy
b159fc3cc4 More tweaks. 2000-03-22 21:24:31 +00:00
Jim Blandy
70b83fe223 Add some test suite philosophy. 2000-03-22 21:22:39 +00:00
Jim Blandy
05c4ba0055 * lib.scm: Doc fixes. 2000-03-22 21:18:57 +00:00
Dirk Herrmann
f81e080b24 Fixed some bugs that are due to the fact that SCM is a void* now.
Cleaned up a macro definition.  Thanks to Dale P. Smith for both of
these patches.
2000-03-22 20:48:18 +00:00
Dirk Herrmann
1ff2fa6e1a Don't use SCM2PTR for non scheme values. 2000-03-22 10:27:36 +00:00
Mikael Djurfeldt
6f29dc6d2f *** empty log message *** 2000-03-22 02:12:58 +00:00
Mikael Djurfeldt
8f9da2f9e9 * tags.h (SCM_ECONSP, SCM_NECONSP): More corrections of
pointer-arithmetic induced by the SCM_PACK/UNPACK change.
2000-03-22 02:12:47 +00:00