Replaced "$<" in non-pattern rules with its value. This is to support
[bpt/guile.git] / libguile / ChangeLog
CommitLineData
a90bdb73
MV
12002-10-13 Marius Vollmer <mvo@zagadka.ping.de>
2
3 * Makefile.am (libpath.h): Fixed typo in top_srcdir_absolute
4 substitution. Thanks to David Allouche!
5
e71a8bf2
DH
62002-10-13 Dirk Herrmann <D.Herrmann@tu-bs.de>
7
8 * evalext.h: Replaced SCM_DEBUG_DEPRECATED with
9 !SCM_ENABLE_DEPRECATED.
10
41f77ff5
MV
112002-10-11 Marius Vollmer <marius.vollmer@uni-dortmund.de>
12
13 * async.c (s_scm_system_async_mark_for_thread): Only call
14 scm_i_thread_root when USE_THREADS is defined. Use scm_root
15 otherwise.
16
17 * scmsigs.c (take_signal): Only call scm_i_thread_root when
18 USE_THREADS is defined. Use scm_root otherwise.
19 (scm_sigaction_for_thread): Ignore THREAD argument when
20 USE_THREADS is not defined. Also, move THREAD argument defaulting
21 out of HAVE_SIGACTION section, which was a bug.
22
6d16b125
MV
232002-10-10 Marius Vollmer <marius.vollmer@uni-dortmund.de>
24
25 * scmsigs.c (scm_sigaction_for_thread): Store original handler in
26 signal_handlers, not the closure that is used as the async.
27 The closure is stored in signal_handler_cells, as previously.
28
acfa1f52
MV
292002-10-10 Marius Vollmer <mvo@zagadka.ping.de>
30
31 * root.h (scm_root_state): Added 'block_async' slot.
32 (scm_active_asyncs): Removed abbrev.
33 * root.c (scm_make_root): Initialize 'block_asyncs' slot.
34
35 * __scm.h (SCM_ASYNC_TICK): Do without the scm_active_asyncs
36 abbrev.
37
38 * async.h (scm_call_with_blocked_asyncs,
39 scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs,
40 scm_c_call_with_unblocked_asyncs): New prototypes.
41 (scm_mask_signals, scm_unmask_signals): Deprecated.
42 (scm_mask_ints): Turned into a macro.
43 * async.c (scm_mask_ints): Removed.
44 (scm_run_asyncs): Do not set scm_mask_ints while running an async.
45 this should not be necessary.
46 (scm_async_click): Test block_asyncs instead of scm_mask_ints.
47 (scm_mask_signals, scm_unmask_signals): Deprecated. Emit
48 deprecation warning and check for errornous use. Set block_asyncs
49 instead of scm_mask_ints.
50 (increase_block, decrease_block, scm_call_with_blocked_asyncs,
51 scm_call_with_unblocked_asyncs, scm_c_call_with_blocked_asyncs,
52 scm_c_call_with_unblocked_asyncs): New.
53
54 * script.c (scm_compile_shell_switches): Do not set scm_mask_ints.
55 Asyncs are enabled by default.
56
34010f56
NJ
572002-10-09 Neil Jerram <neil@ossau.uklinux.net>
58
59 * vports.c (scm_make_soft_port): Allow vector argument to carry a
60 6th element: an input waiting thunk.
61 (sf_input_waiting): New.
62
9310d6f2
MV
632002-10-05 Marius Vollmer <mvo@zagadka.ping.de>
64
65 * root.c (root_mark): Mark active_asyncs slot.
66
67 * async.c (scm_async_click): Set the cdr of a executed handler
68 cell to SCM_BOOL_F, not SCM_EOL.
69 (scm_i_queue_async_cell): Queue the cell at the end of the list,
70 and only if the handler procedure is not already present.
71 (scm_system_async_mark_for_thread): Initialize cdr of handler cell
72 with SCM_BOOL_F.
73 * scmsigs.c (scm_sigaction_for_thread): Likewise.
74
ac48c719
RB
752002-10-04 Rob Browning <rlb@defaultvalue.org>
76
1360a142
RB
77 * guile.c (main): switch to scm_lt_dlset_preloaded_symbols;
78
79 * dynl.c (sysdep_dynl_link): switch to scm_lt_dlhandle,
80 scm_lt_dlopenext, and scm_lt_dlerror.
81 (sysdep_dynl_unlink): switch to scm_lt_dlhandle, scm_lt_dlclose,
82 and scm_lt_dlerror.
83 (sysdep_dynl_func): switch to scm_lt_dlhandle, scm_lt_dlsym,
84 and scm_lt_dlerror.
85 (sysdep_dynl_init): switch to scm_lt_dlinit();
86
87 * Makefile.am (libguile_la_LIBADD): switch to use
88 libguile-ltdl.la.
89
ac48c719
RB
90 * numbers.c (s_scm_integer_expt): (expt 0 1) should be 1.
91
497092c9
MV
922002-10-04 Marius Vollmer <mvo@zagadka.ping.de>
93
94 * scmsigs.h (scm_sigaction_for_thread): New prototype.
95 * scmsigs.c (got_signal): Removed.
96 (signal_handler_cells, signal_handler_threads): New.
97 (take_signal): Queue the cell of the signal for the specified
98 thread. Reset the signal handler on systems that don't have
99 sigaction.
100 (sys_deliver_signals): Removed.
101 (close_1): New.
102 (scm_sigaction_for_thread): Renamed from scm_sigaction and
103 extended to also set the thread of a signal and allocate a cell
104 for it. Keep the Scheme name "sigaction". Check that signum is
105 within range. Also, use SCM_VECTOR_REF instead of SCM_VELTS.
106 (scm_sigaction): Implement in terms of scm_sigaction_for_thread.
107 (scm_init_scmsigs): Allocate signal_handler_cells and
108 signal_handler_threads vectors.
109
110 * async.c: Removed GUILE_OLD_ASYNC_CLICK code. Reorganized so
111 that system asnycs and user asyncs are separated. Reimplemented
112 system asyncs to work per-thread.
113
114 * gc.c (scm_init_gc): Do not use scm_system_async.
115
116 * async.h (scm_asyncs_pending, scm_set_tick_rate,
117 scm_set_switch_rate, scm_system_async_mark_from_signal_handler):
118 Removed prototypes.
119 (scm_i_queue_async_cell): New.
120
121 * __scm.h (scm_asyncs_pending_p): Removed.
122 (SCM_ASYNC_CLICK): Check scm_active_asyncs instead of
123 scm_asyncs_pending_p.
124
125 * async.h (scm_system_async_mark_for_thread): New prototype.
126
127 * __scm.h: Removed GUILE_OLD_ASYNC_CLICK code.
128
129 * root.h (scm_root_state): Added new "active_asyncs" slot.
130 * root.c (scm_make_root): Initialize it to SCM_EOL.
131
132 * coop-defs.h (coop_t): Added new "handle" slot.
133 * coop-threads.c (all_threads, scm_current_thread,
134 scm_all_threads, scm_i_thread_root): New.
135 (scm_threads_init): Add main thread to all_threads.
136 (scheme_launch_thread): Remove thread from all_threads when it
137 terminates.
138 (scm_call_with_new_thread): Initialize handle slot of coop_t
139 structure and add new thread to all_threads.
140 (scm_spawn_thread): Likewise.
141
142 * threads.h (scm_current_thread, scm_all_threads): New prototypes.
143 * threads.c (scm_current_thread, scm_all_threads): Register as
144 primitives.
145
146 * dynl.c: Use scm_lt_ prefix for libltdl functions.
147
480fa28d
NJ
1482002-09-29 Neil Jerram <neil@ossau.uklinux.net>
149
150 * script.c (scm_compile_shell_switches): Fix bad spelling of
151 `explicitly' in comment.
152
1532002-09-28 Neil Jerram <neil@ossau.uklinux.net>
154
155 * posix.c (scm_geteuid, scm_getegid, scm_seteuid, scm_setegid):
156 Refer to provided? in doc string rather than deprecated feature?.
157
3553e1d1
GH
1582002-09-24 Gary Houston <ghouston@arglist.com>
159
160 * inline.h (scm_double_cell): prevent reordering of statements
161 with any following code (for GCC 3 strict-aliasing).
162 * numbers.c (scm_make_real), num2float.i.c (FLOAT2NUM): removed
163 the earlier version of the reordering prevention.
164
4ad0814a
HWN
1652002-09-19 Han-Wen Nienhuys <hanwen@cs.uu.nl>
166
167 * inline.h (scm_double_cell): move SET_GCMARK set out of if body.
168
e88e4f2e
HWN
1692002-09-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>
170
171 * gc-malloc.c (scm_gc_register_collectable_memory): more overflow
172 protection.
173
1e71eafb
HWN
1742002-09-08 Han-Wen Nienhuys <hanwen@cs.uu.nl>
175
176 * inline.h: include stdio.h
177
178 * smob.c (free_print): abort if scm_debug_cell_accesses_p is set
179
61ef9c1f
HWN
1802002-09-05 Han-Wen Nienhuys <hanwen@cs.uu.nl>
181
dac04e9f
HWN
182 * gc-segment.c (scm_i_make_initial_segment): check user settings
183 for sanity.
184
185 * gc-malloc.c (scm_gc_init_malloc): check user settings for
186 sanity.
dac04e9f
HWN
187
188 * gc-freelist.c (scm_init_freelist): check user settings for sanity.
189
ffd72400
HWN
190 * struct.h: change scm_structs_to_free to scm_i_structs_to_free
191
192 * gc-malloc.c (scm_gc_register_collectable_memory): use floats;
1e71eafb
HWN
193 these won't ever wrap around with high memory usage. Thanks to
194 Sven Hartrumpf for finding this.
ffd72400 195
5bd4a949
HWN
196 * gc-freelist.c: include <stdio.h>
197
61ef9c1f
HWN
198 * gc-malloc.c: add DEBUGINFO for mtrigger GCs.
199
ffd0ef3b
MV
2002002-09-01 Marius Vollmer <mvo@zagadka.ping.de>
201
a27e3d14
MV
202 * vectors.h (SCM_VECTOR_REF): New.
203
ffd0ef3b
MV
204 * snarf.h (SCM_DEFINE_PUBLIC): New.
205
f8a1712b
MV
2062002-08-30 Marius Vollmer <mvo@zagadka.ping.de>
207
208 * socket.c (scm_addr_vector): Added size of address to arguments.
209 Use it to avoid accessing a non-existent path in a sockaddr_un.
210 Changed all callers.
211
7200a36b
HWN
2122002-08-29 Han-Wen Nienhuys <hanwen@cs.uu.nl>
213
1383773b
HWN
214 * gc.h: remove DOUBLECELL card flags.
215
216 * gc-malloc.c (scm_calloc): try to use calloc() before calling
217 scm_realloc().
218
219 * gc-segment.c (scm_i_initialize_heap_segment_data): remove card
220 init loop; handle this from scm_init_card_freelist()
221
222 * gc-card.c (scm_init_card_freelist): init bit vector here.
223
7200a36b 224 * numbers.c (scm_make_real): prevent reordering of statements
8fa5786d 225 num2float.i.c (FLOAT2NUM): idem
7200a36b 226
9981de3a
HWN
2272002-08-27 Han-Wen Nienhuys <hanwen@cs.uu.nl>
228
229 * eval.h: prepend libguile/ to include path
230
19647556
MV
2312002-08-26 Marius Vollmer <mvo@zagadka.ping.de>
232
233 * script.c (scm_compile_shell_switches): Added "2002" to Copyright
234