*** empty log message ***
[bpt/guile.git] / libguile / ChangeLog
CommitLineData
c5133dc9
MD
12000-03-16 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
2
3 * gc.c (scm_gc_sweep): Sigh... forgot to clear private freelists
4 after GC.
5
3820581c
GB
6Wed Mar 15 08:27:04 2000 Greg J. Badros <gjb@cs.washington.edu>
7
8 * fluids.c: Docstring patch from Keisuke Nishida. Some
9 reindentation, too, and a couple formals renamed. Should
10 fluid-set! return UNSPECIFIED instead of a value?
11
12Wed Mar 15 08:24:58 2000 Greg J. Badros <gjb@cs.washington.edu>
13
14 * Makefile.am: Separate out DOT_X_FILES and DOT_DOC_FILES, and
15 generate the latter from the concrete listing of the former. Then
16 make guile-procedures.txt depend on DOT_DOC_FILES instead of
17 *.doc, so that rebuilding it works.
18
dd6390bf
GB
19Wed Mar 15 08:12:14 2000 Greg J. Badros <gjb@cs.washington.edu>
20
21 * libguile.h: Include libguile/validate.h. Thanks Keisuke Nishida!
22
23 * guile-snarf.awk.in: Replace docstring line-ending \n" and \n\n"
24 with nothing and \n, respectively. Thanks Keisuke Nishida for
25 noticing this problem.
26
4fdb0ae2
MD
272000-03-15 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
28
29 * __scm.h (GUILE_NEW_GC_SCHEME): Define this if you want to test a
30 new way of allocating heap. It makes Guile fast, but still
31 contains bugs.
32
33 * gc.c, gc.h, pairs.h, init.c: Implementation of a new way of
34 allocating heap. The basic idea is to trigger GC every Nth
35 allocated cell and grow heap when free list runs out. The scheme
36 has been extended so that GC isn't triggered until all remaining
37 cells are used. The implementation is also prepared for
38 development in the direction of POSIX threads.
39
40 * gc.c (SCM_EXPHEAP): In order to grow by a factor of 1.5,
41 SCM_EXPHEAP should return half of the heap size.
42
3d8d1283
MD
432000-03-14 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
44
5f4edb86
MD
45 The following change to init.c is only enabled if Guile was
46 configured with --enable-guile-debug.
47
48 * init.c (scm_i_getenv_int): New function.
49 (scm_boot_guile_1): Use the environment variables
50 GUILE_INIT_HEAP_SIZE, GUILE_INIT_HEAP_SIZE2 to select heap size if
51 they exist. (This may be replaced by a Scheme level mechanism in
52 the future.)
53
3d8d1283 54 * objprop.c (s_scm_set_object_property_x): Use scm_assq instead of
90e77861 55 scm_assoc. (Thanks to Keisuke Nishida.)
3d8d1283 56
b0e37c83
MD
572000-03-14 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
58
59 * eval.c, lang.c, lang.h (scm_lisp_nil, scm_lisp_t): Renamed from
2b260c0f 60 scm_nil, scm_t. (Thanks to Keisuke Nishida.)
b0e37c83 61
16d35552
MD
622000-03-14 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
63
5ebf0091
MD
64 * init.c (scm_boot_guile_1): Use same initial segment size for
65 1-word and 2-word segments. Having the smaller size causes Guile
66 to GC too often. Obviously something needs to be done to allow
67 for a smaller 2-word segment without this to happen. (The amount
68 of heap for each type should be automatically adapted to the
69 application somehow.)
70
31ed4cff
MD
71 [Almost all of these changes should be documented in the NEWS
72 file.]
73
cf2c7413
MD
74 * gc.h (scm_freelist_t): New type.
75
76 * pairs.h (SCM_NEWCELL, SCM_NEWCELL2): Use new style freelists.
77
78 * gc.c (SCM_INIT_HEAP_SIZE): Changed from 32768 --> 40000 so that
79 all of Guile basics fits into one segment and there suitable room
80 for work.
81 (SCM_EXPHEAP): Now takes an argument. Grow by a factor of 1.5
82 instead of 2.
83 (scm_freelist, scm_freelist2): Now of type scm_freelist_t.
84 Freelists now contains information about object span, cells
85 collected and amount of cells in heap segments belonging to the
86 list.
87 (scm_heap_size, scm_gc_cells_collected): Removed.
88
89 * init.c (scm_boot_guile_1): Make 2-word segment 8K (512 cells).
90
16d35552
MD
91 * Makefile.am (libguile_la_LDFLAGS): Bumped library version
92 number.
93
cf2c7413 94 * __scm.h eq.c, eval.c, gc.c, gc.h, gh_data, hash.c, numbers.c,
16d35552
MD
95 numbers.h, objects.c, ramap.c, random.c, unif.c, unif.h: Extensive
96 rewrite of handling of real and complex numbers.
97 (SCM_FLOATS, SCM_SINGLES): These #ifdef conditionals have been
98 removed along with the support for floats. (Float vectors are
99 still supported.)
100
101 * tags.h (scm_tcs_bignums): Removed.
102 (scm_tc16_bigpos, scm_tc16_bigneg): Replaced by scm_tc16_big.
103 Use SCM_BIGSIGN(x) to test for sign!
104 (scm_tc16_big): The new bignum type.
105 (SCM_REAL_PART, SCM_IMAG_PART): Removed.
106
107 * numbers.h (SCM_BIGSIGN): Sign moved to bit 16.
108 (scm_makdbl): Deprecated.
109 (SCM_NEWREAL, SCM_NEWCOMPLEX): New macros.
110 (SCM_SINGP): Deprecated.
111 (SCM_FLO): Removed.
112 (SCM_INEXP, SCM_CPLXP): Deprecated.
113 (SCM_INEXACTP, SCM_COMPLEXP): New macros.
114 (SCM_COMPLEX_REAL, SCM_COMPLEX_IMAG): Renamed from
115 SCM_REAL, SCM_IMAG (and now only valid for complex numbers).
116 (SCM_REAL, SCM_IMAG): New, *deprecated*, selectors which work both
117 for doubles and complex numbers.
118 (SCM_REAL_VALUE): New selector for doubles.
119 (scm_double_t, scm_complex_t): New types.
120 (scm_dbl): Removed.
121
122 * numbers.c (scm_floprint, scm_floequal): Removed.
123 (scm_print_real, scm_print_complex, scm_real_equalp,
124 scm_complex_equalp): New functions.
125
126 * unif.c (scm_makflo): Removed.
127
128 * smob.h (SCM_SMOB_PREDICATE): New macro.
129 (SCM_NEWSMOB2, SCM_RETURN_NEWSMOB2, SCM_NEWSMOB3,
130 SCM_RETURN_NEWSMOB3): New macros.
131
1321999-11-21 Michael Livshin <mlivshin@bigfoot.com>
133
134 The following changes implement primitive support for double cells
135 (i.e. four-word cells) and change the representation of some
136 things to multi-cells instead of cons+malloc. (Applied and
137 modified by mdj.)
138
139 * pairs.h (SCM_NEWCELL2): double-cell variants of SCM_NEWCELL.
140 (SCM_CELL_WORD, SCM_CELL_WORDLOC, SCM_SET_CELL_WORD): primitive
141 multi-cell access macros (used by the ones below).
142 (SCM_CELL_WORD[0-3], SCM_SET_CELL_WORD[0-3]): multi-cell access
143 macros.
144
145 * gc.c (scm_freelist2): multi-cell freelists.
146 (inner_map_free_list): map_free_list, parameterized on ncells.
147 "nn cells in segment mm" was misleading for ncells > 1; changed to
148 "objects". still print cells too, though.
149 (scm_map_free_list): rewritten using inner_map_free_list.
150 (scm_check_freelist): get freelist as parameter, since now we have
151 more than one.
152 (scm_debug_newcell2): multi-cell variants of
153 scm_debug_newcell.
154 (scm_gc_for_newcell): take ncells and freelist pointer as
155 parameters.
156 (scm_gc_mark): add case for tc7_pws (procedures with setters are
157 now double cells).
158 (scm_gc_sweep): don't free the float data, since it's not malloced
159 anymore.
160 (init_heap_seg): didn't understand what n_new_objects stood for,
161 so changed to n_new_cells.
162 (make_initial_segment): new function, makes an initial segment
163 according to given ncells.
164 (scm_init_storage): call make_initial_segment, for ncells={1,2,3}.
165
166 * numbers.c (scm_makdbl): no malloc'ing needed, so the
167 {DEFER,ALLOW}_INTS thing removed.
168
169 * numbers.h (struct scm_dbl): changed to represent a double cell,
170 with the number in the second half.
16d35552
MD
171
172 * dynwind.c: changed the wind-guards representation to double
173 cell.
174
175 * procs.c, procs.h: changed the procedure-with-setter representation
176 to double cell.
177
178 * async.c, async.h: made async representation a double cell.
179
16d35552
MD
180 * dynl.c: made dynamic_obj representation a double cell.
181
b70ecbd0
GH
1822000-03-13 Gary Houston <ghouston@arglist.com>
183
184 * ports.c (flush_void_port): renamed to flush_port_default.
185 (end_input_void_port): renamed to end_input_default.
186
187 * init.c (scm_standard_stream_to_port): create a void port instead
188 of opening /dev/null if the standard file descriptors are bad.
189 advantages: no portability problems, doesn't waste a file descriptor,
190 simplifies the code (thanks to Marius for the idea).
191
192 * vports.c (s_scm_make_soft_port): call scm_port_non_buffer.
193
194 * void ports: make reading from a void port give EOF instead of
195 segv:
196 * ports.c (s_scm_sys_make_void_port): modified docstring.
197 (fill_input_void_port): new proc.
198 (scm_init_ports): set up fill_input_void_port.
199 * ports.c (scm_port_non_buffer): new proc.
200 (scm_void_port): call scm_port_non_buffer.
201
202 * fports.c (scm_setvbuf): docstring: remove the fcntl documentation
203 which was incorrectly appended.
204
fdc7ea2d
MD
2052000-03-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
206
207 * guile-doc-snarf.in: Don't use absolute path for `sed'. (Note
208 that we can't use autoconf for this. Autoconf itself relies on
26fba922 209 the existence of `sed' somewhere on your path.) (Thanks to Dirk
fdc7ea2d
MD
210 Herrman.)
211
68933ba3
MD
2122000-03-13 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
213
b44a555a
MD
214 * Makefile.am (libguile_la_SOURCES): Moved iselect.c here from
215 EXTRA_libguile_la_SOURCES.
216
217 * iselect.h: Always declare scm_internal_select.
218
219 * iselect.c (scm_internal_select): Added SCM_ASYNC_TICK at the
220 end. Also let scm_internal_select be a real function also when
221 not using threads.
222
68933ba3
MD
223 * __scm.h (SCM_TICK): Oops! Forgot to put SCM_ASYNC_TICK here...
224
c7f6ea11
MD
2252000-03-13 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
226
227 * __scm.h (SCM_ALLOW_INTS, SCM_REALLOW_INTS): Removed call to
228 SCM_ASYNC_TICK. (This is a preparation for POSIX threads support,
229 and kind of an experiment: Will this cause problems?)
230
62dbc244
GB
231Sun Mar 12 13:26:30 2000 Greg J. Badros <gjb@cs.washington.edu>
232
233 * Makefile.am: Added *.doc to DISTCLEANFILES.
234
4f2f645d
GH
2352000-03-12 Gary Houston <ghouston@arglist.com>
236
237 * fports.c (scm_fdes_to_port): call fcntl F_GETFL to test that
238 the fdes is valid before doing anything else. check that
239 the file descriptor supports the modes required.
240 (scm_fport_buffer_add): don't throw an error if fstat doesn't
241 work: just use the default buffer size.
242
243 * throw.c: change an outdated comment about scm_internal_catch
244 BODY: it doesn't take a jumpbuf arg.
245
246 * init.c (scm_standard_stream_to_port): install a handler in case
247 scm_fdes_to_port throws an error. don't check here whether the
248 file descriptor is valid, since scm_fdes_to_port will do that.
249 set the revealed count depending on whether the port got the
250 standard file descriptor.
251 (stream_body_data): new type.
252 (stream_body, stream_handler): new procs.
253
7f782a0a
MD
2542000-03-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
255
67673f75
MD
256 * stacks.c, stacks.h, struct.c, tags.h, unif.c (scm_bits_t):
257 Renamed from SCMWORD.
258
259 * tags.h (SCM_NCELLP): Removed (SCMWORD).
260
f1267706 261 * arbiters.c (SCM_ARB_LOCKED): Use SCM_UNPACK_CAR.
67673f75 262
74a426ae
MD
263 * async.c, boolean.h, debug.c, dynl.c, dynwind.c, eval.c, eval.h,
264 feature.h, filesys.h, fluids.h, fports.c, fports.h, gc.c, gc.h,
265 hash.c, keywords.h, macros.c, numbers.c, numbers.h, objects.c,
266 objects.h, options.c, pairs.h, ports.c, ports.h, print.c,
267 procs.h, ramap.c, read.c, smob.c, smob.h, srcprop.h, stacks.c,
268 stacks.h, strports.c, struct.c, struct.h, tag.c, tags.h,
269 throw.c, unif.c, unif.h, variable.h, vectors.h, weaks.c,
f1267706 270 weaks.h (SCM_PACK, SCM_UNPACK, SCM_UNPACK_CAR): Renamed from
74a426ae
MD
271 SCM_ASSCM, SCM_ASWORD, SCM_CARW).
272
7f782a0a
MD
273 * numbers.h (SCM_SRS, SCM_INUM): Corrected SCM_ASSCM/ASWORD fixes.
274
275 * alist.c, eval.c, net_db.c, posix.c, print.c, snarf.h, struct.c,
276 tags.h: Fixed copyright notices.
277
278 * struct.c, coop-threads.c: SCM_ASSCM/ASWORD fixes.
0cd87628 279
7f782a0a
MD
2802000-03-12 Marius Vollmer <mvo@zagadka.ping.de>
281
0cd87628
MV
282 * init.c (scm_standard_stream_to_port): Check whether the file
283 descriptor is valid and substitute "/dev/null" when not.
7f782a0a 284
f3b5e185
MD
2852000-03-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
286
287 * coop-defs.h (struct timespec): Conditionally defined.
288
289 * coop.c (coop_condition_variable_timed_wait_mutex): Use ETIMEDOUT
290 instead of ETIME.
38eca29b
MD
291
292 * readline.c (match_paren): Bugfix: First arg to select is not
293 number of descriptors but the number of the highest descriptor +
294 1.
295
296 This is a preliminary attempt at a cleanup of the threads support
297 code. It moves things to better places, makes arguments more
298 consistent with the POSIX API (which is used in GNOME's glib), and
299 adds new functionality.
300
301 * readline.c (scm_init_readline): Added new arg to scm_init_mutex.
302
303 * coop-defs.h (scm_mutex_trylock): New macro: alias for
304 coop_mutex_trylock.
305 (scm_cond_init): Changed definition to
306 coop_new_condition_variable_init.
38eca29b
MD
307
308 * coop.c: #include <errno.h>
309 (coop_timeout_qinsert): Moved here from iselect.c
310 (coop_new_mutex_init, coop_new_condition_variable_init): New
311 functions. The strange names are temporary. Use scm_mutex_init
312 and scm_cond_init instead.
313 (coop_mutex_trylock): New function. Uses errno.h:EBUSY. errno.h
314 is ANSI C, but should we check for individual error codes in
315 configure.in?
316 (coop_condition_variable_timed_wait_mutex): New function.
317 (coop_key_create, coop_setspecific, coop_getspecific,
7f782a0a 318 coop_key_delete): New functions.
38eca29b
MD
319
320 * iselect.c (coop_timout_qinsert): Moved to coop.c
321
32e1616c
MD
3222000-03-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
323
324 * pairs.h (SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR,
325 SCM_SETOR_CDR): Corrected SCM_ASSCM/WORD fixes.
326
327 * tags.h (SCM_VOIDP_TEST): Renamed from VOIDP_TEST.
328 Layout cleanups.
329
330 * objects.h (SCM_CLASS_FLAGS, SCM_OBJ_CLASS_FLAGS,
331 SCM_SET_CLASS_INSTANCE_SIZE), struct.h (SCM_STRUCT_VTABLE_DATA),
332 proc.h (SCM_CLOSCAR): SCM_ASSCM/WORD fixes.
333
334 * eval.c (scm_lookupcar1): Inserted SCM_ASWORD in expressions
335 dealing with ilocs.
336
d5c39069
GB
3372000-03-11 Dale P. Smith <dpsm@en.com>, applied by Greg J. Badros, <gjb@cs.washington.edu>
338
339 * numbers.c (scm_copy_big_dec, scm_copy_smaller, scm_big_ior,
340 scm_big_xor, scm_big_and, scm_big_test): Added new lowlevel bignum
341 logical functions from SCM.
342
343 (logand, logior, logxor, logtest, logbit?): Extended scheme
344 logical functions to use bignums from SCM.
345
346 (lognot): Removed call to `SCM_VALIDATE_INUM' that prevented
347 lognot from using bignums.
348
3e892913
GB
349Thu Mar 9 11:33:25 2000 Greg J. Badros <gjb@cs.washington.edu>
350
351 * vectors.h (SCM_VELTS_AS_STACKITEMS): Added this macro to help in
352 eliminating some warnings.
353
354 * unif.c, strports.c, print.c, options.c: Fix some warnings on
355 mis-use of SCM/long
356
357 * gc.c, gc.h: Added scm_return_first_int(), and added comment re:
358 what the scm_return_first* functions do.
359
7ac030d6
GB
3602000-03-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>, applied by Greg J. Badros, <gjb@cs.washington.edu>
361
362 * libguile/*.[ch]: make a distinction between SCM as a generic
363 name for a Scheme object (now a void*), and SCM as 32 bit word for
364 storing tags and immediates (now a long int). Introduced
365 SCM_ASWORD and SCM_ASSCM for conversion. Fixed various dubious
366 code in the process: arbiter.c (use macros), unif.c (scm_array_p),
367
f635d2d4
GB
368Wed Mar 8 10:15:59 2000 Greg J. Badros <gjb@cs.washington.edu>
369
370 * numbers.c: Use SCM_VALIDATE_LONG_COPY, and longs, not ints, in
371 various logXXX primitives. Thanks Eric Moore!
372
9eaa7fb6
GB
373Tue Mar 7 08:05:22 2000 Greg J. Badros <gjb@cs.washington.edu>
374
375 * run-test, remaining-docs-needed: Added these scripts. The
376 second one is only temporary until the docstring additions are
377 complete. run-test may best live on, but is here mostly for
378 convenience and awareness for now.
379
380 * hash.c: Docs, minor cleanup patch from Dirk Herrman.
381
49673698
GB
382Thu Mar 2 16:06:58 2000 Greg J. Badros <gjb@cs.washington.edu>
383
384 * error.h, error.c: Added `scm_wrong_type_arg_msg' to support
385 displaying the expected type. Use SCM_LISTn in a couple places
386 instead of scm_cons-ing by hand.
387
388 * __scm.h: Added SCM_ASSERT_TYPE macro.
389
390 * validate.h, scm_validate.h: Added the former, as a renamed
391 version of the latter with SCM_ASSERT_TYPE used in
392 SCM_MAKE_VALIDATE (instead of just SCM_ASSERT)
393
394 * Makefile.am: Rename scm_validate.h to validate.h.
395
396 * *.c, *.h: Include validate.h, not scm_validate.h (old name's
397 prefix was superfluous).
398
417bdef8
GB
399Thu Mar 2 15:33:12 2000 Greg J. Badros <gjb@cs.washington.edu>
400
401 * hashtab.c: Improved documentation for lots of functions. Added
402 handwritten docs for `hash-fold'.
403
404Thu Mar 2 15:13:25 2000 Greg J. Badros <gjb@cs.washington.edu>
405
406 * list.c: Added hand-written docs for `del{q,v,ete}1!'.
407
26a760c6
GB
408Thu Mar 2 12:38:30 2000 Greg J. Badros <gjb@cs.washington.edu>
409
410 * list.c: Moved append docs to append! Thanks Dirk Hermann. Also,
411 added append docs from R4RS.
412
413 * strings.c: Docstring typo fix, + eliminate unneeded IMP tests.
414 Thanks Dirk Hermann!
415
416 * chars.h: Provide SCM_CHARP, SCM_CHAR, SCM_MAKE_CHAR and
417 deprecate SCM_ICHRP, SCM_ICHR, SCM_MAKICHR. Thanks Dirk Hermann!
418
419 * *.h, *.c: Use SCM_CHARP, SCM_CHAR, SCM_MAKE_CHAR throughout.
420 Drop use of SCM_P for function prototypes... assume an ANSI C
421 compiler. Thanks Dirk Hermann!
422
898942f8
GB
423Sat Feb 19 12:20:12 2000 Greg J. Badros <gjb@cs.washington.edu>
424
425 * ports.c: Made `set-port-column!' and `set-port-line!' each
426 return SCM_UNSPECIFIED instead of a (not-scheme-object) integer
427 that caused a seg fault. Also fixed `set-port-column!'s
428 docstring. Thanks Han-Wen Nienhuys for finding the bug!
429
84a3df2c
GB
430Sun Feb 13 19:11:42 2000 Greg J. Badros <gjb@cs.washington.edu>
431
432 * arbiters.c, eq.c, gc.c, guardians.c, list.c, ports.c, print.c,
433 regex-posix.c, scmsigs.c, stime.c, strings.c, variable.c, stime.c,
434 strings.c, variable.c: Added lots of documentation, cleaned up
435 some existing documentation. Occasionally changed formal params
436 to match docs. Also folded an #ifdef into the inners of a
437 primitive instead of having two copies of the primitive
438 (`get-internal-real-time', from stime.c)
439
440Sun Feb 13 18:12:19 2000 Greg J. Badros <gjb@cs.washington.edu>
441
442 * ports.c: Added docs for primitives missing them. Written by
443 hand.
444
3f557de6
GB
445Sun Feb 13 09:40:36 2000 Greg J. Badros <gjb@cs.washington.edu>
446
447 * guile-doc-snarf.in: Use ${AWK} -f guile-func-name-check, not
448 just execing guile-func-name-check. Thanks Michael Livshin!
449
ddcccdb3
GB
450Thu Feb 10 11:43:23 2000 Greg J. Badros <gjb@cs.washington.edu>
451
452 * guile-snarf.awk.in: Tweak to work with Sun/HP awk, removed some
453 dead code. Patch from Michael Livshin.
454
455 * guile-doc-snarf.in: Tweak to work with Sun/HP sh. Patch from
456 Michael Livshin.
457
720e8692
GH
4582000-02-09 Gary Houston <ghouston@arglist.com>
459
460 * init.c (scm_init_standard_ports): when stdout is a tty, make the
461 current-output-port unbuffered by default. this is less confusing
462 for interactive use. it was line-buffered because of a
463 performance problem with unbuffered ports, but I think it will be
464 OK now.
465
43ff3170
GH
4662000-02-08 Gary Houston <ghouston@arglist.com>
467
468 * __scm.h: don't define long_long or ulong_long if HAVE_LONG_LONGS
469 is not defined.
470
471 * stime.c (scm_localtime, scm_mktime): if neither HAVE_TM_ZONE nor
472 HAVE_TZNAME are defined, use an empty string instead of giving two
473 spurious compile-time errors.
474
4ba47302
GB
475Tue Feb 8 13:57:46 2000 Greg J. Badros <gjb@cs.washington.edu>
476
477 * ports.c: Doc patches from Richard Kim. Pasted from MIT Scheme.
478 Thanks Richard!
479
09a617f7
GB
480Mon Feb 7 09:07:31 2000 Greg J. Badros <gjb@cs.washington.edu>
481
482 * macros.c: Doc patches from Richard Kim. Pasted from scm.texi.
483
9dbcf010
GB
484Sun Feb 6 20:26:21 2000 Greg J. Badros <gjb@cs.washington.edu>
485
486 * pairs.c: Doc patches from Richard Kim. Pasted from MIT Scheme
487 (which is GNU GPL'd).
488
bd9e24b3
GH
4892000-01-31 Gary Houston <ghouston@arglist.com>
490
491 * strings.h: don't use SCM_P. don't include <string.h>.
492 * error.c, gh_data.c, ports.c, script.c, strop.c: include <string.h>.
493
494 * strings.c (scm_string_ref): make the 2nd argument compulsory.
495 previously it defaulted to zero for no good reason that I can see.
496 use a local variable for SCM_INUM (k). replace
497 SCM_VALIDATE_INUM_DEF with SCM_VALIDATE_INUM_COPY.
498
499 (scm_makfromstr): cosmetic changes.
500
501 (scm_string): Accept only chars in the list, not strings, for
502 conformance to R5RS (particularly for list->string, which is
503 supposed to be the inverse of string->list.) remove
504 SCM_DEFER_INTS/SCM_ALLOW_INTS, which is unnecessary since
505 scm_makstr handles the cell allocation. when reporting wrong-type
506 arg, don't report the position as 1.
507
508 * posix.c (scm_init_posix): intern PIPE_BUF if it's defined.
509
28d77376
GH
5102000-01-29 Gary Houston <ghouston@arglist.com>
511
ae1b098b
GH
512 * posix.c (scm_pipe): rewrote the docstring.
513
28d77376
GH
514 * filesys.c (scm_select, retrieve_select_type, get_element,
515 fill_select_type, set_element): modified so that Scheme
516 "select" tests port buffers for the ability to provide input
517 or accept output. Previously only the underlying file descriptors
518 were checked. Rewrote the docstring.
519
7f1497ce
GB
520Thu Jan 27 10:14:25 2000 Greg J. Badros <gjb@cs.washington.edu>
521
522 * vectors.c, symbols.c, strorder.c: Documentation cut and pasted
523 from Gregg Reynolds. Thanks Gregg!
524
2288ff9b
GB
525Thu Jan 27 09:59:38 2000 Greg J. Badros <gjb@cs.washington.edu>
526
527 * strop.c (scm_i_index): Obfuscated commented-out SCM_DEFINE by
528 adding "x" prefix to the line so that guile-func-name-check
529 doesn't complain unnecessarily.
530
349af6dd
GB
531Wed Jan 26 17:33:52 2000 Greg J. Badros <gjb@cs.washington.edu>
532
533 * throw.c: Factor out an #ifdef/#else/#endif choice more finely
534 for maintainability.
535
536 * strop.c: Documentation added by Gregg A. Reynolds. Pasted in
537 from qdocs, RnRs.
538
a28eb127
GB
539Wed Jan 26 10:02:11 2000 Greg J. Badros <gjb@cs.washington.edu>
540
541 * tag.c: Added doc for `tag', but mark as deprecated since Mikael
542 suggests removing tag.c altogether (and using a new `class-of'
543 instead).
544
545 * strings.c: Added documentation from Gregg A. Reynolds. Edited
546 a bit by me to use FOO instead of @var{foo} and to have the
547 summary come before preconditions on input. Also dropped trailing
548 (rnrs) note.
549
550 * gsubr.c: Do not use SCM_DEFINE for `gsubr-apply'. Register the
551 function with scm_make_subr_opt w/ last arg of 0 so it is not
552 visible at the Scheme level. Mikael says that this is the right
553 thing because the first arg to the proc is the guts of a compiled
554 closure and shouldn't be exposed to the Scheme level.
555
ac2259fc
GB
556Tue Jan 25 17:15:47 2000 Greg J. Badros <gjb@cs.washington.edu>
557
558 * sort.c: typo in comment fixed.
559
560 * keywords.c: Added documentation.
561
562 * guardians.c: Added documentation (could be better).
563
564 * gc.c: Added docs for gc-set-debug-check-freelist.
565
566 * eq.c: Added docs for eq?, eqv? equal? abridged from R4RS.
567
568 * boolean.c: Added docs for `not', `boolean?' (by hand).
569
d928e0b4
GB
570Tue Jan 25 13:28:56 2000 Greg J. Badros <gjb@cs.washington.edu>
571
572 * random.c: Added documentation, from SLIB page:
573 http://angela.ctrl-c.liu.se/~calle/scheme/slib_toc.html
574
575Mon Jan 24 17:50:20 2000 Greg J. Badros <gjb@cs.washington.edu>
576
577 * variable.c, version.c: Added documentation, written by hand
578 since I could not find anything already written that was
579 relevant.
580
d831b039
GH
5812000-01-23 Gary Houston <ghouston@arglist.com>
582
583 * filesys.c (scm_chown): omit port/fdes support if HAVE_FCHOWN is
584 not defined (thanks to Richard Y. Kim).
585
88ec97ad
GB
586Thu Jan 20 13:00:38 2000 Greg J. Badros <gjb@cs.washington.edu>
587
588 * Makefile.in: Removed, this is auto-generated.
589
078e9092
GB
590Thu Jan 20 11:33:47 2000 Dirk Hermann <dirk@ida.ing.tu-bs.de> --applied 01/20/00 gjb
591
592 * list.c: Put some variable initialization code at the point of
593 declaration; Added a comment for list*; Formatting changes.
594
595 * load.c: use SCM_NNULLP to make sure the end of a list is not
596 reached yet.
597
e7a96050
MD
5982000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
599
a177af34
MD
600 * backtrace.c (scm_display_error_message): Bugfix: Don't use
601 result of scm_list_p as C boolean.
602 (scm_display_error_message, scm_set_print_params_x): Use new
603 validation macros. (Thanks to Dirk Herrmann.)
604
d06bcb02
MD
605 * net_db.c (scm_resolv_error): Cast result from hstrerror.
606
607 * strports.c (st_end_input): Inserted parenthesis to get operator
608 grouping correct.
609
610 * list.h (scm_init_list): Removed SCM_P around prototypes.
611
612 * fports.c, list.c, numbers.c, ports.c, stime.c, symbols.c,
613 filesys.c, posix.c: Converted docstrings to ANSI C format and
e7a96050
MD
614 escaped " occurring inside string literals.
615
682eefe9
MD
616Tue Jan 18 13:21:08 2000 Mikael Djurfeldt <mdj@r11n07-s.pdc.kth.se>
617
618 * posix.c (scm_mknod): Escape " occuring inside docstring.
619
56cfe22b
MD
6202000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
621
622 * alist.c, chars.c, debug.c, dynl.c, dynwind.c, error.c, eval.c,
623 evalext.c, filesys.c, gc.c, hash.c, hashtab.c, ioext.c,
624 keywords.c, list.c, load.c, macros.c, net_db.c, numbers.c,
625 objprop.c, ports.c, posix.c, print.c, procprop.c, procs.c,
626 ramap.c, regex-posix.c, root.c, scmsigs.c, simpos.c, socket.c,
627 stacks.c, stime.c, strings.c, strop.c, strports.c, struct.c,
628 symbols.c, throw.c, unif.c, vectors.c, version.c, vports.c,
629 weaks.c: Converted docstrings to ANSI C format.
630
631 * filesys.c (scm_chmod), simpos.c (scm_system), version
632 (scm_version), vports (scm_make_soft_port): Escape " occuring
633 inside docstring.
634
fcb1720f
GB
635Mon Jan 17 11:41:22 2000 Greg J. Badros <gjb@cs.washington.edu>
636
637 * scm_validate.h: Added SCM_VALIDATE_ULONG_COPY,
638 SCM_VALIDATE_LONG_COPY
639
640 * numbers.c: Use SCM_VALIDATE_ULONG_COPY, instead of
641 SCM_VALIDATE_INUM_COPY to let bigger numbers be used. Rename a
642 couple of formal arguments (and fix their uses) to make arguments
643 match the documentation.
644
b9af3d0e
MS
6452000-01-14 <mstachow@alum.mit.edu>
646
647 * Makefile.am: Augment path when running guile-doc-snarf so
648 guile-func-name-check is found.
649
153511a7
GB
650Fri Jan 14 09:34:55 2000 Greg J. Badros <gjb@cs.washington.edu>
651
652 * scm_validate.h (SCM_NUM2LONG_DEF): Fix this macro to just use
653 def, not SCM_MAKINUM(def); thanks Janis Bzerins!
654
59d5245f
GB
655Wed Jan 12 00:06:53 2000 Greg J. Badros <gjb@cs.washington.edu>
656
657 * net_db.c (s_scm_inet_makeaddr): Use SCM_NUM2ULONG since that's
658 the way guile-1.3.4 worked, but #if 0 out the version using
659 SCM_VALIDATE_INUM_COPY for stricter testing.
660
95aec69f
GB
661Tue Jan 11 18:24:18 2000 Greg J. Badros <gjb@cs.washington.edu>
662
663 * guile-doc-snarf.in: Use new $fullfilename for running
664 guile-func-name-check, and put "$fullfilename" and "$filename" in
665 quotes at uses to make sure re-splitting on whitespace does not
666 occur (so filenames w/ embedded whitespace would work okay, though
667 I sure hope we never have to deal with that! :-) ). Thanks to
668 Mikael for pointing out the source_dir != build_dir was broken.
669
b7ac2837
GB
670Tue Jan 11 17:42:40 2000 Greg J. Badros <gjb@cs.washington.edu>
671
672 * scm_validate.h: Added SCM_NUM2LONG_DEF macro. Make
673 SCM_OUT_OF_RANGE use SCM_MAKINUM, not scm_long2num. Added
674 SCM_COERCE_ROSTRING macro. Added SCM_VALIDATE_NONEMPTYLIST
675 macro. Fix SCM_VALIDATE_STRINGORSUBSTR macro to not use SLOPPY
676 variants.
677
678 * ports.c (scm_port_closed_p): Validate that the arg is a PORT,
679 then return whether it's an open port (was validating that it was
680 an open port -- this was a bug I introduced back in December, but
681 my careful reading of diffs caught it).
682
683 * numbers.c: Recombine the two conditional-compilation paths for
684 all the log* primitives -- they were split based on #ifndef
685 scm_long2num; factored out a SCM_LOGOP_RETURN macro, and fixed
686 some bugs and inconsistencies in the two sets of implementations.
687 (scm_lognot) Fixed *atrocious* re-use of a SCM as an integer!
688
689 * ioext.c: Use SCM_ASSERT_RANGE in a couple places, and
690 SCM_VALIDATE_INUM_COPY once where it should've been used.
691
692 * fluids.c (scm_internal_with_fluids): Use
693 SCM_VALIDATE_LIST_COPYLEN.
694
695 * filesys.c: Use SCM_NUM2LONG instead of SCM_VALIDATE_INUM_COPY;
696 this is questionable as it relaxes type safety, but other changes
697 were useful and all SCM_NUM2LONG's should probably be
698 revisited. Use SCM_OUT_OF_RANGE, SCM_WRONG_TYPE_ARG.
699
700 * evalext.c: line-break change on 1 line.
701
702 * eval.c (nconc2last): Takes a non-empty list as its first
703 argument, not just a list.
704
705 * dynl.c: Use new SCM_COERCE_ROSTRING macro.
706
707Tue Jan 11 15:44:23 2000 Greg J. Badros <gjb@cs.washington.edu>
708
709 * dynl.c, feature.c, filesys.c, fports.c, list.c, load.c,
710 net_db.c, sort.c, stacks.c, unif.c: Use SCM_WTA, SCM_MISC_ERROR
711 where possible.
712
713 * symbols.c (scm_sysintern0): Fixed the function name in a
714 scm_misc_error invocation.
715
716 * print.c (scm_simple_format): Do not need SCM_COERCE_SUBSTR, and
717 use scm_return_first to ward off latent GC bug that Mikael caught.
718
719 * async.c: Use SCM_VALIDATE_ASYNC_COPY one place where it wasn't
720 used before but should've been.
721
d61f6b02
MD
7222000-01-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
723
724 * snarf.h (SCM_PROC1): Replaced SCM (*) (...) with
725 SCM_FUNC_CAST_ARBITRARY_ARGS.
726
88423ab1
GB
727Tue Jan 11 13:44:07 2000 Greg J. Badros <gjb@cs.washington.edu>
728
729 * guile-func-name-check.in: Added this script to statically check
730 #define FUNC_NAME, #undef FUNC_NAME in the source.
731
732 * sort.c, posix.c: Fix #undef FUNC_NAME lines to not have trailing
733 redundant comment, semicolon; caught by new guile-func-name-check
734 script.
735
736 * debug.c: Fix mistaken #define FUNC_NAME for scm_make_iloc.
737 Caught by new guile-func-name-check-script.
738
739 * Makefile.am: Added guile-func-name-check to bin_SCRIPTS
740
741 * ramap.c: Fix #if 0'd out code to be syntactically acceptable to
742 guile-func-name-check.
743
744 * guile-doc-snarf.in: Run guile-func-name-check on the file before
745 doing the snarf.
746
7f15e635
GB
747Tue Jan 11 11:31:10 2000 Greg J. Badros <gjb@cs.washington.edu>
748
749 * fports.c, ports.c, ports.h, strports.c, vports.c: Make write
750 port function take const void*, not void*.
751
bf121b59
GB
752Tue Jan 11 11:18:07 2000 Greg J. Badros <gjb@cs.washington.edu>
753
754 * scm_validate.h, chars.c, ports.c, print.c, read.c, strings.c,
755 strop.c: Use SCM_VALIDATE_ICHR, SCM_VALIDATE_ICHR_COPY instead of
756 SCM_VALIDATE_CHAR, SCM_VALIDATE_CHAR_COPY. Change made for
757 consistency with the other macros dealing with immediate
758 characters. (Similar to INT -> INUM change a week or so ago).
759
7965d98f
GB
760Tue Jan 11 10:41:46 2000 Greg J. Badros <gjb@cs.washington.edu>
761
762 * dynl.c, error.c, eval.c, feature.c, filesys.c, fports.c, list.c, load.c,
763 net_db.c, read.c, socket.c: Update error messages to use ~A for
764 %s, ~S for %S to work with new `simple-format' format and be
765 standardized better.
766
767 * print.h, print.c (scm_simple_format): Added `simple-format'
768 primitive. It's the old scm_display_error, with ARGS now a rest
769 parameter, and the destination first instead of last (and a couple
770 new capabilities inspired by `format' -- #t as destination means
771 current-output-port, #f means return the formatted text as a
772 string.
773
774 * gh.h, gh_data.c, ports.h, ports.c: Added some missing const specifications.
775
776 * backtrace.c (scm_display_error_message): Rewrote to use
777 scm_simple_format() procedure.
778
779 * __scm.h: Added commented-out #define of GUILE_DEBUG_FREELIST
780
f73d2411
MV
7812000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
782
783 Finally applied the libltdl patch from Thomas Tanner, with slight
784 modifications.
785
786 * DYNAMIC-LINKING: Removed because it is obsolete.
787 * dynl.c: Use ANSI prototypes.
788 (sysdep_dynl_link): Use lt_dlopenext instead of lt_dlopen.
789 * scmconfig.h.in: Do not change, as it is automatically generated.
790
791 1999-07-25 Thomas Tanner <tanner@ffii.org>
792
793 * dynl-dl.c, dynl-dld.c, dynl-shl.c, dynl-vms.c: deleted
794 (obsolete)
795 * Makefile.am: likewise, add INCLTDL (libltdl headers) to
796 INCLUDES, set dlpreopened files in LDFLAGS, link libguile
797 against libltdl
798 * dynl.c: use libltdl if DYNAMIC_LINKING is enabled,
799 * guile.c: register preloaded modules
800 * scmconfig.h.in: remove obsolete symbols
801
38c1d3c4
GH
8022000-01-09 Gary Houston <ghouston@arglist.com>
803
804 * These changes should make it unnecessary to call tzset from
805 Scheme after modifying the TZ environment variable, even if the
806 system date facilities cache the value.
807 * stime.c (setzone, scm_localtime): added comments.
808 (tzset): don't define a noop tzset macro if HAVE_TZSET not defined.
809 (setzone): don't call tzset.
810 (restorezone): call tzset only if HAVE_TZSET is defined.
811 (scm_tzset): don't define if HAVE_TZSET not defined. Change the
812 doc string to indicate that this procedure isn't likely to do
813 anything useful.
814 (scm_localtime, scm_strftime, scm_mktime): call tzset if
815 LOCALTIME_CACHE is defined.
816
9359d657
MD
8172000-01-09 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
818
819 * posix.c (scm_sync): Return SCM_UNSPECIFIED.
820
f25f761d
GH
8212000-01-09 Gary Houston <ghouston@arglist.com>
822
823 * eval.c: define scm_unbound_variable_key ('unbound-variable).
824 scm_lookupcar1: throw an error with key 'unbound-variable instead
825 of 'misc-error when an unbound variable is encountered.
826
827 * filesys.c (scm_mkdir, scm_rmdir, scm_getcwd, scm_select,
828 scm_symlink, scm_readlink, scm_lstat),
829 posix.c (scm_setpgid, scm_setsid, scm_ctermid, scm_tcgetpgrp,
830 scm_tcsetpgrp, scm_uname, scm_setlocale, scm_mknod, scm_nice,
831 scm_sync),
832 simpos.c (scm_system),
833 stime.c (scm_times, scm_strptime):
834 move the HAVE_XXX feature tests out of the procedure bodies.
835 don't use SCM_SYSMISSING.
836 scm_validate.h (SCM_SYSMISSING): removed.
837 error.h, error.c (scm_sysmissing): comment that this is deprecated.
838 see ChangeLog entry for 1999-12-28.
839
a4dd2611
GB
840Sat Jan 8 19:52:04 2000 Greg J. Badros <gjb@cs.washington.edu>
841
842 * scm_validate.h (SCM_VALIDATE_BOOL_COPY): Fix typo.
843
844Sat Jan 8 17:06:46 2000 Greg J. Badros <gjb@cs.washington.edu>
845
846 * backtrace.c: Fix spelling typo in a comment.
847
848 * snarf.h: Use new SCM_DOCS macro to encapsulate the non SCM_INIT
849 text. Reformatted some of the expansions.
850
5ac36451
GB
851Fri Jan 7 15:50:46 2000 Greg J. Badros <gjb@cs.washington.edu>
852
853 * scm_validate.h (SCM_OUT_OF_RANGE): Use scm_out_of_range_pos to
854 report the position of the argument.
855
856 * error.h, error.c (scm_out_of_range_pos): Added this function to
857 take extra "pos" argument, the position number of the errant
858 argument.
859
860 * debug.c: Use SCM_OUT_OF_RANGE instead of scm_out_of_range.
861
862 * snarf.h: Use SCM_HERE and SCM_INIT as names, not SCM_NOTSNARF
863 and SCM_SNARFING. Also put the %%% in the SCM_INIT since Mikael
864 prefers that and I'm reasonably indifferent.
865
866Fri Jan 7 15:03:32 2000 Greg J. Badros <gjb@cs.washington.edu>
867
868 * snarf.h: Factor out differences between C++ and non-C++ into
869 SCM_FUNC_CAST_ARBITRARY_ARGS macro. Modify all the snarf macro
870 definitions to use SCM_NOTSNARF and SCM_SNARFING macros (like
871 Mikael's macros, below, but changed names and SCM_SNARFING no
872 longer expands to include %%% -- that must appear in the argument
873 so that the token appears at the call-site as a reminder).
874
088bb1d4
MD
8752000-01-07 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
876
877 * snarf.h (SCM_INSITU, SCM_INIT): New snarf macros for use in user
878 snarf macro definitions.
879
636480e6
MD
8802000-01-06 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
881
882 * chars.c (scm_integer_to_char): Use Greg's nice
883 SCM_VALIDATE_INUM_RANGE macro for argument checking for closer
884 adherence to R5RS.
885
7c5628e2
GB
886Thu Jan 6 11:48:49 2000 Greg J. Badros <gjb@cs.washington.edu>
887
888 * *.c, snarf.h: Replace GUILE_PROC1 with SCM_DEFINE1 throughout.
889
2cc0f8cb
GB
890Thu Jan 6 11:22:53 2000 Greg J. Badros <gjb@cs.washington.edu>
891
892 * Makefile.am (ETAGS_ARGS): Switch to SCM_DEFINE, SCM_DEFINE1
893 instead of GUILE_PROC.
894
895Thu Jan 6 11:21:49 2000 Greg J. Badros <gjb@cs.washington.edu>
896
897 * alist.c: Do not report mismatch errors on some uses of `tmp' (do
898 this by using SCM_ARG2 instead of `2' in the SCM_VALIDATE_CONS
899 macro call.
900
9179dcdd
GB
901Thu Jan 6 09:54:33 2000 Dirk Herrmann <dirk@ida.ing.tu-bs.de> --gjb applied
902
903 * scm_validate.h: Remove some redundant NIMP tests.
904
905 * alist.c: minimize scope of the tmp variables, and initialize
906 them when declared. The strange SCM_NIMP tests are replaced by
907 SCM_CONSP tests that more closely reflect the intended semantics.
908 However, we don't get a performance penalty here, because the
909 SCM_CONSP test was performed by the ALISTCELL test anyway. * The
910 extremely ugly use of ASRTGO macros was removed: The calls to
911 ASRTGO were not encapsulated by "#ifndef SCM_RECKLESS", but got a
912 label parameter that only exists when SCM_RECKLESS is not defined.
913 This works, because ASRTGO itself is defined in a way that it only
914 makes use of the label parameter if SCM_RECKLESS is not defined
915 (shudder!). Does guile make at all use of the possibility to
916 define SCM_RECKLESS? * Codesize is likely to be reduced, since
917 instead of two calls to SCM_ASSERT performed by the ALISTCELL test
918 we now only get one test.
919
920 * list.c: Use SCM_NNULLP, not SCM_NIMP as appropriate. Also use
921 SCM_NULLP instead of SCM_IMP. Drop use of "register" keyword on
922 some variables in `list?'. Fix `reverse' and `reverse!'
923 primitives to handle improper lists better.
924
15b33280
GB
925Wed Jan 5 11:24:53 2000 Greg J. Badros <gjb@cs.washington.edu>
926
927 * *.[ch]: Whitespace changes -- added space after SCM_VALIDATE_*
928 macros and SCM_DEFINE macros to match GNU coding standards.
929
ca8cd130
GB
930Wed Jan 5 11:04:24 2000 Greg J. Badros <gjb@cs.washington.edu>
931
932 * *.[ch]: Replace GUILE_PROC w/ SCM_DEFINE.
933
fb764465
GB
934Wed Jan 5 10:59:06 2000 Greg J. Badros <gjb@cs.washington.edu>
935
936 * *.[ch]: Replace SCM_VALIDATE_INT w/ SCM_VALIDATE_INUM for
937 better consistency with the names of other SCM_VALIDATE_ macros
938 and better conformance to guile naming policy.
939
940Wed Jan 5 10:50:39 2000 Greg J. Badros <gjb@cs.washington.edu>
941
942 * ports.c (s_scm_close_all_ports_except): Use SCM_ARG1 in a
943 SCM_VALIDATE instead of 1 to avoid a check on the argument (since
944 it's not the actual name of the formal).
1e484823
GB
945
946 * guile-snarf.awk.in: Do argument/number mismatch checking and
947 print warnings in an Emacs compile-mode parseable format.
948
949 * struct.c: Use SCM_ASSERT_RANGE instead of SCM_ASSERT w/
950 SCM_OUTOFRANGE as 3rd argument.
951
952 * random.c: Fix argument/number mismatch (that I introduced :-( ).
953
954 * __scm.h: Do not #define SCM_ARG* when snarfing;
955 lets us distinguish between 1 and SCM_ARG1 when snarfing as only
956 the former (using the number) requires the argument to match the
957 formal in the current argument snarfing check.
958
959 * snarf.h: Give new definition of SCM_ASSERT when in
960 snarfing mode to output a lexically-identifiable sequence that the
961 guile-snarf.awk script uses to verify argument/position matching.
962
963 * ramap.c: Remove extraneous #undef FUNC_NAME.
964
53fc4636
GB
965Wed Jan 5 08:36:38 2000 Greg J. Badros <gjb@cs.washington.edu>
966
967 * guile-doc-snarf.awk.in: Removed -- guile-snarf.awk.in is the
968 current version of the same functionality; it writes the .x output
969 to stdout instead of directly into the file.
970
971Wed Jan 5 08:15:04 2000 Greg J. Badros <gjb@cs.washington.edu>
972
973 * unif.c, symbols.c, strings.c, stacks.c, random.c, print.c,
974 posix.c: Eliminated a bunch of SCM_NIMP(..)s that are now
975 redundant with the safer macros. Patch from Dirk Hermann applied
976 by hand. Thanks Dirk!
977
978 * scm_validate.h: Added SCM_VALIDATE_VECTOR_OR_DVECTOR for some
979 uses in random.c.
980
981 * ramap.c: whitespace change.
982
3b5345d9
GB
983Tue Jan 4 14:21:35 2000 Greg J. Badros <gjb@cs.washington.edu>
984
985 * options.c, objects.c, keywords.c, gc.c: Some redundant SCM_NIMP
986 removals from Dirk Hermann.
987
988 * alist.c: Rename formals to match the parameter names in the
989 documentation, updates to documentation. Thanks Dirk Hermann!
990
169aec65
MD
9912000-01-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
992
db62436e
MD
993 * eval.c (SCM_CEVAL): Reverse order of
994 scm_stack_checking_enabled_p and SCM_STACK_OVERFLOW_P
995 (Thanks to Brad Knotwell.)
169aec65 996
da43d822
GB
997Mon Jan 3 08:30:02 2000 Greg Harvey <Greg.Harvey@thezone.net> (applied --01/03/00 gjb)
998
999 * gc.c (scm_debug_newcell): Added SCM_SETCAR of the newly
1000 allocated cell.
1001
1002 * pairs.h: Added a comment about the need for the SCM_SETCAR in
1003 SCM_NEWCELL macro.
1004
1005Mon Jan 3 08:25:19 2000 Greg J. Badros <gjb@cs.washington.edu>
1006
1007 * dynl-vms.c, debug.c, coop-threads.c, backtrace.c, eval.c: More
1008 SCM_NIMP tests that were redundant are now eliminated. Patches
1009 from Dirk Hermann applied by hand.
1010
339999c7 1011The ChangeLog continues in the file: "ChangeLog-1996-1999"