*** empty log message ***
[bpt/guile.git] / libguile / ChangeLog
CommitLineData
58932e4a
MV
1Sun Jun 8 14:37:26 1997 Marius Vollmer <mvo@zagadka.ping.de>
2
3 * eval.c (scm_lookupcar1): New procedure to cope with a race
4 condition during lookup (when using threads).
5 (scm_lookupcar): Implement in terms of scm_lookupcar1.
6 (SCM_CEVAL): Use scm_lookupcar1 instead of scm_lookupcar in one
7 place.
8
95d59d10
JB
9Fri Jun 6 19:05:07 1997 Jim Blandy <jimb@totoro.cyclic.com>
10
11 * regex-posix.c (scm_regexp_exec): Use the `start' argument if
12 supplied. (Change from Tim Pierce.)
13
0b46857f
MV
14Thu Jun 5 16:38:19 1997 Marius Vollmer <mvo@zagadka.ping.de>
15
16 * struct.c (init_struct): Forget to mention this in the "Wed Jun 4
17 23:47:01 1997" changelog: Slots are now initialized with `#f' by
18 default and not `()'. `#f' is the canonical non-value in Scheme,
19 right?
20
5dade857
MV
21Wed Jun 4 23:47:01 1997 Marius Vollmer <mvo@zagadka.ping.de>
22
23 * struct.c (struct_printer): New variable that holds a handle on
24 the Scheme variable *struct-printer*. This variable can be set by
25 Scheme code to override the printing of structures.
26 (scm_print_struct): If struct_printer is set, call it. If it is
27 not set, or returns #f, print the structure in the old fashion.
28 Include "eval.h" for scm_apply.
29
7507aba1
MV
30Tue Jun 3 23:01:39 1997 Marius Vollmer <mvo@zagadka.ping.de>
31
32 * struct.c (scm_struct_ref, scm_struct_set_x): Use
33 scm_struct_i_n_words to get the number of fields, not
34 -scm_struct_n_extra_words.
35
36 On the route to fancier struct printing:
37 * struct.c (scm_print_struct): New function to print a structure.
38 Include "genio.h" to support it. This function doesn't do
39 anything interesting right now, but I think it should be here
40 anyway.
41 * struct.h: Include "print.h" and add prototype for
42 scm_print_struct.
43 * print.c (scm_iprin1): Call scm_print_struct instead of trying to
44 print structures ourself.
45
2ad6b1a5
GH
46Sun Jun 1 07:58:41 1997 Gary Houston <ghouston@actrix.gen.nz>
47
48 * scmsigs.c (sys_deliver_signals): bug fix: reset got_signal[i]
49 before applying the handler in case it doesn't return.
50
e1a191a8
GH
51Sat May 31 18:57:51 1997 Gary Houston <ghouston@actrix.gen.nz>
52
53 * scmsigs.h, async.h: updated.
54
55 * _scm.h: if HAVE_RESTARTS is defined then don't use a SYSCALL
56 loop.
57
58 * posix.c (scm_uname): interpret only negative values as an error.
59 Solaris normally returns a positive value.
60
61 * script.c (scm_compile_shell_switches): if we are not going into
62 an interactive repl, set scm_mask_ints to zero so that asyncs can
63 run.
64
65 * simpos.c (scm_system): don't ignore/unignore signals around
66 the "system" call.
67
68 * posix.c (scm_open_pipe): don't ignore/unignore signals around
69 the "popen" call.
70
71 * init.c (scm_boot_guile_1): don't call scm_init_signals, it's
72 done in boot-9.scm instead.
73
74 * scmsigs.c, async.c: Major rewriting of signal handling code.
75 (scm_sigaction): new procedure.
76 (scm_sleep): don't wrap sleep in SCM_SYSCALL, it would mess up the
77 timing.
78 (scm_raise): return unspecified, throw error on failure.
79
0e165281
JB
80Thu May 29 02:47:36 1997 Jim Blandy <jimb@floss.cyclic.com>
81
82 * regex-posix.c (scm_init_regex_posix): Register the "regex"
83 feature, to help boot-9.scm decide whether to import the regex
84 module.
85
4885ba0e 86Thu May 29 02:19:40 1997 Jim Blandy <jimb@floss.cyclic.com>
1e5afba0 87
4885ba0e
JB
88 * eval.c: Include scmconfig.h at the beginning of the file so that
89 HAVE_ALLOCA_H may properly be defined. Thanks to Bill Janssen for
90 pointing this out.
1e5afba0
JB
91
92 * regex-posix.c: #include "_scm.h" before conditionally #including
93 <regex.h>; the former defines HAVE_REGCOMP.
94
4885ba0e
JB
95 * regex-posix.c: #include <regex.h> conditionally, so the file is
96 CPP'able (for dependency scanning) even on systems that don't have
97 a <regex.h> header.
98
5aefdd40
JB
99Tue May 27 23:48:38 1997 Jim Blandy <jimb@floss.cyclic.com>
100
101 Add new R4RS-compliant syntax for keywords.
102 * read.c (scm_lreadr): Recognize `#:' as a prefix for keywords,
103 regardless of the setting of the `keywords' read option.
104 * kw.c (prin_kw): Print keywords using the `#:' syntax, so they
105 can be re-read no matter what the setting of the `keywords' read
106 option.
107
737c9113
JB
108Tue May 27 22:47:31 1997 Tim Pierce <twp@twp.tezcat.com>
109
110 Add support for POSIX regular expressions.
111
112 * regex-posix.c, regex-posix.h: New files. (Some code
113 is taken liberally from rx/rgx.c in the old Guile dist.)
114
115 * init.c: Include regex-posix.h.
116 (scm_boot_guile_1): Call scm_init_regex_posix.
117
118 * Makefile.am (EXTRA_libguile_la_SOURCES, modinclude_HEADERS):
119 Add regex-posix.[ch] sources.
120 * Makefile.in: Regenerated.
121
122 * scmconfig.h.in: Add HAVE_REGCOMP macro. (automake is supposed
123 to do this automatically? It didn't for me, bleh.)
124
06de7963
JB
125Mon May 26 18:51:29 1997 Jim Blandy <jimb@floss.cyclic.com>
126
33623b5e
JB
127 * fports.c (print_pipe_port): New function.
128 (scm_fptob): Use print_pipe_port instead of scm_prinport; the
129 latter doesn't even take the right arguments.
130
131 * Makefile.am: Increment shared lib revision number. I think
132 sometimes the uninstalled Guile finds the installed shared lib;
133 Gord says doing this might help. As things turned out, I can't
134 say whether it does.
135 * Makefile.in: Regenerated.
136
06de7963
JB
137 * gh_init.c (gh_enter): Cast c_main_prog to a void * before
138 passing it as the closure argument to scm_boot_guile. (Bill
139 Janssen)
140
141 * ports.c (print_void_port, putc_void_port, puts_void_port,
142 write_void_port, flush_void_port, getc_void_port, close_void_port,
143 noop0): Use ANSI prototypes instead of K&R declarations, so the
144 initialization of void_port_ptob gets aggressively type-checked.
145 Fix arguments of print_void_port and write_void_port. (Bill
146 Janssen)
82892bed
JB
147
148 * COPYING, __scm.h, _scm.h, alist.c, alist.h, append.c, append.h,
149 appinit.c, arbiters.c, arbiters.h, async.c, async.h, backtrace.c,
150 backtrace.h, boolean.c, boolean.h, chars.c, chars.h,
151 continuations.c, continuations.h, coop-defs.h, coop-threads.c,
152 coop-threads.c.cygnus, coop-threads.h, coop-threads.h.cygnus,
153 coop.c, debug.c, debug.h, dynl-dl.c, dynl-dld.c, dynl-shl.c,
154 dynl-vms.c, dynl.c, dynl.h, dynwind.c, dynwind.h, eq.c, eq.h,
155 error.c, error.h, eval.c, eval.h, extchrs.h, feature.c, feature.h,
156 filesys.c, filesys.h, fports.c, fports.h, fsu-pthreads.h, gc.c,
157 gc.h, gdbint.c, gdbint.h, genio.c, genio.h, gh.h, gh_data.c,
158 gh_eval.c, gh_funcs.c, gh_init.c, gh_io.c, gh_list.c,
159 gh_predicates.c, gh_test_c.c, gh_test_repl.c, gscm.c, gscm.h,
160 gsubr.c, gsubr.h, guile.c, hash.c, hash.h, hashtab.c, hashtab.h,
161 init.c, init.h, ioext.c, ioext.h, kw.c, kw.h, libguile.h, list.c,
162 list.h, load.c, load.h, mallocs.c, mallocs.h, markers.c,
163 markers.h, mbstrings.c, mbstrings.h, mit-pthreads.c,
164 mit-pthreads.h, net_db.c, net_db.h, numbers.c, numbers.h,
165 objprop.c, objprop.h, options.c, options.h, pairs.c, pairs.h,
166 ports.c, ports.h, posix.c, posix.h, print.c, print.h, procprop.c,
167 procprop.h, procs.c, procs.h, putenv.c, ramap.c, ramap.h, read.c,
168 read.h, root.c, root.h, scmhob.h, scmsigs.c, scmsigs.h, script.c,
169 script.h, sequences.c, sequences.h, simpos.c, simpos.h, smob.c,
170 smob.h, snarf.h, socket.c, socket.h, srcprop.c, srcprop.h,
171 stackchk.c, stackchk.h, stacks.c, stacks.h, stime.c, stime.h,
172 strings.c, strings.h, strop.c, strop.h, strorder.c, strorder.h,
173 strports.c, strports.h, struct.c, struct.h, symbols.c, symbols.h,
174 tag.c, tag.h, tags.h, threads.c, threads.h, throw.c, throw.h,
175 unif.c, unif.h, variable.c, variable.h, vectors.c, vectors.h,
176 version.c, version.h, vports.c, vports.h, weaks.c, weaks.h: New
177 address for FSF.
178
3f4c654d
JB
179Mon May 26 12:37:30 1997 Jim Blandy <jimb@floss.cyclic.com>
180
181 * script.c (scm_find_executable): Use prototype-style definition
182 here; apparently it's not quite right to have const in a prototype
183 and then use a K&R declaration. I wonder if stuff like this will
184 go away if we compile with -Wrequire-prototypes, or whatever that
a00c28cd 185 is... (Bernard URBAN)
3f4c654d
JB
186
187 * scmhob.h: New text from Bernard URBAN.
188
189Sat May 17 17:14:36 1997 Jim Blandy <jimb@floss.cyclic.com>
190
191 * script.c: Don't #define const on hpux. Configure takes care of
192 this. (Thanks to Larry Schwimmer.)
193
194 * script.c: Use the HAVE_UNISTD_H symbol provided by autoconf to
195 decide whether to #include <unistd.h>, instead of listing a bunch
196 of systems. Don't #include stdio twice. Removed dyked-out
197 definition of scm_find_impl_file.
198
eeb56f3c
JB
199Fri May 16 03:06:08 1997 Jim Blandy <jimb@floss.cyclic.com>
200
adb98aa9
JB
201 * Makefile.am (libguile_la_LDFLAGS): Update libguile's shared
202 library version info to 1:0.
203 * Makefile.in: Regenerated.
204
142ad3d9
JB
205 * backtrace.c, backtrace.h, debug.c, debug.h, eq.c,
206 gdb_interface.h, gdbint.c, gdbint.h, gh_data.c, gh_init.c,
207 gh_io.c, gh_list.c, gh_predicates.c, gh_test_c.c, gh_test_repl.c,
208 init.c, net_db.c, options.c, options.h, ports.c, print.c, read.c,
209 script.h, snarf.h, srcprop.c, srcprop.h, stacks.c, stacks.h,
210 throw.c: Update copyright years; these files have been worked on
211 significantly in 1997, but only had copyright years for 1996.
212 Also, change name of copyright holder on some from Mikael
213 Djurfeldt to Free Software Foundation; he has signed papers
214 assigning the changes to the FSF.
215
eeb56f3c
JB
216 * script.c (scm_shell_usage): Pass FATAL to exit. There's no
217 reason not to give the user the option.
190b072d
JB
218
219 * net_db.c (scm_gethost, scm_getnet, scm_getproto, scm_getserv):
220 Return #f on end-of-file when scanning table (i.e. when called
221 with no arguments). Try to catch errors, when we can.
095936d2
JB
222 * posix.c (scm_getgrgid, scm_getpwuid): Same.
223
224 * script.h (scm_shell_usage, scm_compile_shell_switches): New
190b072d
JB
225 external declarations. These are useful.
226
a48a89bc
GH
227Thu May 15 05:21:36 1997 Gary Houston <ghouston@actrix.gen.nz>
228
229 * posix.c: don't include <sys/select.h> or define macros for
230 select, since they were not used in this file.
231
095936d2 232 * filesys.c (scm_select): make the fifth parameter microseconds,
a48a89bc
GH
233 not milliseconds. let the fourth parameter be either a real value
234 or an integer or #f. The first, second and third arguments can
235 now be vectors: the type of the corresponding return set will be
236 the same.
237 (set_element, get_element): new static procedures.
238
f3b1485f
JB
239Wed May 14 12:18:12 1997 Jim Blandy <jimb@floss.cyclic.com>
240
223be5f0
JB
241 * strports.c (scm_eval_string): New function.
242 (scm_eval_0str): Trivially re-implemented in terms of
243 scm_eval_string.
244 * strports.h (scm_eval_string): New extern decl.
245
e1cd56f9
JB
246 * net_db.c (h_errno): Add extern decl for this.
247
f3b1485f
JB
248 * fports.c (local_pclose): New function.
249 (scm_pipob): Use it in the initializer here.
250
251 From Tim Pierce:
252 * net_db.c (scm_gethost, scm_getproto, scm_getnet, scm_getserv):
253 Use a meaningful error message when signalling an error. For
254 this, scm_gethost must check h_errno rather than errno.
255
9b01064c
JB
256Tue May 13 16:40:06 1997 Jim Blandy <jimb@floss.cyclic.com>
257
258 * Makefile.in: Regenerated, using automake-1.1p.
259
08fea088
GH
260Tue May 13 04:34:52 1997 Gary Houston <ghouston@actrix.gen.nz>
261
0267051b
GH
262 * socket.c (scm_addr_vector): use SCM_UNDEFINED in scm_listify,
263 not SCM_UNSPECIFIED.
264
08fea088
GH
265 * script.c (scm_compile_shell_switches): don't append (quit) if
266 interactive.
267 (scm_shell): call scm_exit_status and exit on the result of the
268 evaluation.
269
821eb64e
JB
270Mon May 12 17:23:58 1997 Jim Blandy <jimb@floss.cyclic.com>
271
272 Ensure that shared substrings are handled properly when passed to
273 a system call or other foreign function. Many thanks to Tim
274 Pierce!
275 * symbols.h (SCM_COERCE_SUBSTR): new macro.
276 * filesys.c (scm_chmod, scm_rename, scm_delete_file, scm_mkdir,
277 scm_rmdir, scm_opendir, scm_chdir, scm_symlink, scm_readlink,
278 scm_lstat), ports.c (scm_sys_make_void_port), posix.c (scm_utime,
279 scm_putenv, scm_setlocale, scm_mknod), stime.c (setzone,
280 scm_strftime), vports.c (scm_make_soft_port), backtrace.c
281 (scm_display_error_message): use RO macros when strings may be RO.
282 * error.c (scm_error_scm), filesys.c (scm_chown, scm_chmod,
283 scm_rename, scm_delete_file, scm_mkdir, scm_rmdir, scm_opendir,
284 scm_chdir, scm_symlink, scm_readlink, scm_lstat), ioext.c
285 (scm_freopen, scm_duplicate_port, scm_fdopen), net_db.c
286 (scm_gethost, scm_getnet, scm_getproto, scm_getserv), ports.c
287 (scm_sys_make_void_port), posix.c (scm_getgrgid, scm_utime,
288 scm_setlocale, scm_mknod), stime.c (setzone, scm_strptime,
289 scm_strftime), vports.c (scm_make_soft_port): use
290 SCM_COERCE_SUBSTR to make sure shared substrings are
291 null-terminated.
292
293Mon May 12 15:33:10 1997 Jim Blandy <jimb@totoro.cyclic.com>
294
295 * error.c (scm_error): Add newline to error message.
296
297 * init.c (scm_init_standard_ports): Doc fix.
298
8e6f33db
MV
299Thu May 8 14:38:01 1997 Marius Vollmer <mvo@zagadka.ping.de>
300
301 * dynl-shl.c: Completely replaced with new code from Bernard
302 URBAN.
303
304 * script.c (scm_ice_9_already_loaded): New variable.
305 (scm_compile_shell_switches): Use it.
306
4edc089c
GH
307Mon May 5 20:35:08 1997 Gary Houston <ghouston@actrix.gen.nz>
308
309 * filesys.c (scm_input_waiting_p): add missing third argument to
310 scm_misc_error.
311
312 * stime.c (scm_localtime): copy the result of localtime before
313 calling gmtime in case they share a buffer.
314 (scm_localtime, scm_mktime): throw an error if neither HAVE_TM_ZONE
315 nor HAVE_TZNAME.
316
554878da
GH
317Fri May 2 19:07:11 1997 Gary Houston <ghouston@actrix.gen.nz>
318
319 * eq.c (scm_equal_p): use SCM_TYP7SD (y) not SCM_TYP7SD (x).
4edc089c 320
914155ca
JB
321Thu May 1 17:01:45 1997 Jim Blandy <jimb@floss.cyclic.com>
322
323 * Makefile.am (check-local): New target, which causes 'make check'
324 to run gh_test_c and gh_test_repl, with some trivial input.
325 * Makefile.in: Rgnrtd.
326
6fa9bcd0
MV
327Tue Apr 29 19:00:40 1997 Marius Vollmer <mvo@zagadka.ping.de>
328
329 * dynl.c (print_dynl_obj): Indicate whether the dynamic object has
330 been unlinked.
331
9ea54cc6
GH
332Mon Apr 28 06:10:14 1997 Gary Houston <ghouston@actrix.gen.nz>
333
334 * async.c (scm_sys_tick_async_thunk): commented out. I'm not
335 sure how this was supposed to work.
336 (scm_async_click): don't send SCM_TICK_SIGNAL.
337 (scm_init_async): don't initialize %tick-thunk.
338
339 * the following change doesn't affect the Scheme interface:
340 gc-thunk is called at the end of garbage collection. however it's
341 no longer implemented by pretending it's a signal.
342
343 * gc.c (scm_gc_end): don't call scm_take_signal. instead mark the
344 system async corresponding to scm_gc_thunk.
345 * async.h: declare scm_gc_async.
346 * async.c (scm_sys_gc_async_thunk): apply the thunk named by
347 gc-thunk directly, instead of going through a signal handler.
348 (scm_gc_async): new variable, points to the GC system-async.
349 (scm_init_async): save the GC async as scm_gc_async instead
350 of using system_signal_asyncs.
351 (scm_gc_vcell): new variable, stores the gc-thunk vcell.
352
10830232
JB
353Mon Apr 28 19:14:44 1997 Jim Blandy <jimb@floss.cyclic.com>
354
355 * Makefile.am (libpath.h, cpp_err_symbols.c, cpp_sig_symbols.c):
356 Don't screw up if we're interrupted.
357 * Makefile.in: Regeneradet.
358
28c682fa
JB
359Sun Apr 27 17:57:15 1997 Jim Blandy <jimb@floss.cyclic.com>
360
361 * aclocal.m4: Removed; unnecessary, given changes of Apr 24.
362
363 * Makefile.am (modincludedir): Use "ice-9" instead of "@module@";
364 we're not using AM_INIT_GUILE_MODULE any more.
365 * Makefile.in: Reneregated.
366
20108301
JB
367Thu Apr 24 00:41:08 1997 Jim Blandy <jimb@floss.cyclic.com>
368
4616e355 369