* async.c, boolean.h, debug.c, dynl.c, dynwind.c, eval.c, eval.h,
[bpt/guile.git] / libguile / ChangeLog
CommitLineData
7f782a0a
MD
12000-03-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
2
3 * numbers.h (SCM_SRS, SCM_INUM): Corrected SCM_ASSCM/ASWORD fixes.
4
5 * alist.c, eval.c, net_db.c, posix.c, print.c, snarf.h, struct.c,
6 tags.h: Fixed copyright notices.
7
8 * struct.c, coop-threads.c: SCM_ASSCM/ASWORD fixes.
0cd87628 9
7f782a0a
MD
102000-03-12 Marius Vollmer <mvo@zagadka.ping.de>
11
0cd87628
MV
12 * init.c (scm_standard_stream_to_port): Check whether the file
13 descriptor is valid and substitute "/dev/null" when not.
7f782a0a 14
f3b5e185
MD
152000-03-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
16
17 * coop-defs.h (struct timespec): Conditionally defined.
18
19 * coop.c (coop_condition_variable_timed_wait_mutex): Use ETIMEDOUT
20 instead of ETIME.
38eca29b
MD
21
22 * readline.c (match_paren): Bugfix: First arg to select is not
23 number of descriptors but the number of the highest descriptor +
24 1.
25
26 This is a preliminary attempt at a cleanup of the threads support
27 code. It moves things to better places, makes arguments more
28 consistent with the POSIX API (which is used in GNOME's glib), and
29 adds new functionality.
30
31 * readline.c (scm_init_readline): Added new arg to scm_init_mutex.
32
33 * coop-defs.h (scm_mutex_trylock): New macro: alias for
34 coop_mutex_trylock.
35 (scm_cond_init): Changed definition to
36 coop_new_condition_variable_init.
38eca29b
MD
37
38 * coop.c: #include <errno.h>
39 (coop_timeout_qinsert): Moved here from iselect.c
40 (coop_new_mutex_init, coop_new_condition_variable_init): New
41 functions. The strange names are temporary. Use scm_mutex_init
42 and scm_cond_init instead.
43 (coop_mutex_trylock): New function. Uses errno.h:EBUSY. errno.h
44 is ANSI C, but should we check for individual error codes in
45 configure.in?
46 (coop_condition_variable_timed_wait_mutex): New function.
47 (coop_key_create, coop_setspecific, coop_getspecific,
7f782a0a 48 coop_key_delete): New functions.
38eca29b
MD
49
50 * iselect.c (coop_timout_qinsert): Moved to coop.c
51
32e1616c
MD
522000-03-11 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
53
54 * pairs.h (SCM_SETAND_CAR, SCM_SETAND_CDR, SCM_SETOR_CAR,
55 SCM_SETOR_CDR): Corrected SCM_ASSCM/WORD fixes.
56
57 * tags.h (SCM_VOIDP_TEST): Renamed from VOIDP_TEST.
58 Layout cleanups.
59
60 * objects.h (SCM_CLASS_FLAGS, SCM_OBJ_CLASS_FLAGS,
61 SCM_SET_CLASS_INSTANCE_SIZE), struct.h (SCM_STRUCT_VTABLE_DATA),
62 proc.h (SCM_CLOSCAR): SCM_ASSCM/WORD fixes.
63
64 * eval.c (scm_lookupcar1): Inserted SCM_ASWORD in expressions
65 dealing with ilocs.
66
d5c39069
GB
672000-03-11 Dale P. Smith <dpsm@en.com>, applied by Greg J. Badros, <gjb@cs.washington.edu>
68
69 * numbers.c (scm_copy_big_dec, scm_copy_smaller, scm_big_ior,
70 scm_big_xor, scm_big_and, scm_big_test): Added new lowlevel bignum
71 logical functions from SCM.
72
73 (logand, logior, logxor, logtest, logbit?): Extended scheme
74 logical functions to use bignums from SCM.
75
76 (lognot): Removed call to `SCM_VALIDATE_INUM' that prevented
77 lognot from using bignums.
78
3e892913
GB
79Thu Mar 9 11:33:25 2000 Greg J. Badros <gjb@cs.washington.edu>
80
81 * vectors.h (SCM_VELTS_AS_STACKITEMS): Added this macro to help in
82 eliminating some warnings.
83
84 * unif.c, strports.c, print.c, options.c: Fix some warnings on
85 mis-use of SCM/long
86
87 * gc.c, gc.h: Added scm_return_first_int(), and added comment re:
88 what the scm_return_first* functions do.
89
7ac030d6
GB
902000-03-09 Han-Wen Nienhuys <hanwen@cs.uu.nl>, applied by Greg J. Badros, <gjb@cs.washington.edu>
91
92 * libguile/*.[ch]: make a distinction between SCM as a generic
93 name for a Scheme object (now a void*), and SCM as 32 bit word for
94 storing tags and immediates (now a long int). Introduced
95 SCM_ASWORD and SCM_ASSCM for conversion. Fixed various dubious
96 code in the process: arbiter.c (use macros), unif.c (scm_array_p),
97
f635d2d4
GB
98Wed Mar 8 10:15:59 2000 Greg J. Badros <gjb@cs.washington.edu>
99
100 * numbers.c: Use SCM_VALIDATE_LONG_COPY, and longs, not ints, in
101 various logXXX primitives. Thanks Eric Moore!
102
9eaa7fb6
GB
103Tue Mar 7 08:05:22 2000 Greg J. Badros <gjb@cs.washington.edu>
104
105 * run-test, remaining-docs-needed: Added these scripts. The
106 second one is only temporary until the docstring additions are
107 complete. run-test may best live on, but is here mostly for
108 convenience and awareness for now.
109
110 * hash.c: Docs, minor cleanup patch from Dirk Herrman.
111
49673698
GB
112Thu Mar 2 16:06:58 2000 Greg J. Badros <gjb@cs.washington.edu>
113
114 * error.h, error.c: Added `scm_wrong_type_arg_msg' to support
115 displaying the expected type. Use SCM_LISTn in a couple places
116 instead of scm_cons-ing by hand.
117
118 * __scm.h: Added SCM_ASSERT_TYPE macro.
119
120 * validate.h, scm_validate.h: Added the former, as a renamed
121 version of the latter with SCM_ASSERT_TYPE used in
122 SCM_MAKE_VALIDATE (instead of just SCM_ASSERT)
123
124 * Makefile.am: Rename scm_validate.h to validate.h.
125
126 * *.c, *.h: Include validate.h, not scm_validate.h (old name's
127 prefix was superfluous).
128
417bdef8
GB
129Thu Mar 2 15:33:12 2000 Greg J. Badros <gjb@cs.washington.edu>
130
131 * hashtab.c: Improved documentation for lots of functions. Added
132 handwritten docs for `hash-fold'.
133
134Thu Mar 2 15:13:25 2000 Greg J. Badros <gjb@cs.washington.edu>
135
136 * list.c: Added hand-written docs for `del{q,v,ete}1!'.
137
26a760c6
GB
138Thu Mar 2 12:38:30 2000 Greg J. Badros <gjb@cs.washington.edu>
139
140 * list.c: Moved append docs to append! Thanks Dirk Hermann. Also,
141 added append docs from R4RS.
142
143 * strings.c: Docstring typo fix, + eliminate unneeded IMP tests.
144 Thanks Dirk Hermann!
145
146 * chars.h: Provide SCM_CHARP, SCM_CHAR, SCM_MAKE_CHAR and
147 deprecate SCM_ICHRP, SCM_ICHR, SCM_MAKICHR. Thanks Dirk Hermann!
148
149 * *.h, *.c: Use SCM_CHARP, SCM_CHAR, SCM_MAKE_CHAR throughout.
150 Drop use of SCM_P for function prototypes... assume an ANSI C
151 compiler. Thanks Dirk Hermann!
152
898942f8
GB
153Sat Feb 19 12:20:12 2000 Greg J. Badros <gjb@cs.washington.edu>
154
155 * ports.c: Made `set-port-column!' and `set-port-line!' each
156 return SCM_UNSPECIFIED instead of a (not-scheme-object) integer
157 that caused a seg fault. Also fixed `set-port-column!'s
158 docstring. Thanks Han-Wen Nienhuys for finding the bug!
159
84a3df2c
GB
160Sun Feb 13 19:11:42 2000 Greg J. Badros <gjb@cs.washington.edu>
161
162 * arbiters.c, eq.c, gc.c, guardians.c, list.c, ports.c, print.c,
163 regex-posix.c, scmsigs.c, stime.c, strings.c, variable.c, stime.c,
164 strings.c, variable.c: Added lots of documentation, cleaned up
165 some existing documentation. Occasionally changed formal params
166 to match docs. Also folded an #ifdef into the inners of a
167 primitive instead of having two copies of the primitive
168 (`get-internal-real-time', from stime.c)
169
170Sun Feb 13 18:12:19 2000 Greg J. Badros <gjb@cs.washington.edu>
171
172 * ports.c: Added docs for primitives missing them. Written by
173 hand.
174
3f557de6
GB
175Sun Feb 13 09:40:36 2000 Greg J. Badros <gjb@cs.washington.edu>
176
177 * guile-doc-snarf.in: Use ${AWK} -f guile-func-name-check, not
178 just execing guile-func-name-check. Thanks Michael Livshin!
179
ddcccdb3
GB
180Thu Feb 10 11:43:23 2000 Greg J. Badros <gjb@cs.washington.edu>
181
182 * guile-snarf.awk.in: Tweak to work with Sun/HP awk, removed some
183 dead code. Patch from Michael Livshin.
184
185 * guile-doc-snarf.in: Tweak to work with Sun/HP sh. Patch from
186 Michael Livshin.
187
720e8692
GH
1882000-02-09 Gary Houston <ghouston@arglist.com>
189
190 * init.c (scm_init_standard_ports): when stdout is a tty, make the
191 current-output-port unbuffered by default. this is less confusing
192 for interactive use. it was line-buffered because of a
193 performance problem with unbuffered ports, but I think it will be
194 OK now.
195
43ff3170
GH
1962000-02-08 Gary Houston <ghouston@arglist.com>
197
198 * __scm.h: don't define long_long or ulong_long if HAVE_LONG_LONGS
199 is not defined.
200
201 * stime.c (scm_localtime, scm_mktime): if neither HAVE_TM_ZONE nor
202 HAVE_TZNAME are defined, use an empty string instead of giving two
203 spurious compile-time errors.
204
4ba47302
GB
205Tue Feb 8 13:57:46 2000 Greg J. Badros <gjb@cs.washington.edu>
206
207 * ports.c: Doc patches from Richard Kim. Pasted from MIT Scheme.
208 Thanks Richard!
209
09a617f7
GB
210Mon Feb 7 09:07:31 2000 Greg J. Badros <gjb@cs.washington.edu>
211
212 * macros.c: Doc patches from Richard Kim. Pasted from scm.texi.
213
9dbcf010
GB
214Sun Feb 6 20:26:21 2000 Greg J. Badros <gjb@cs.washington.edu>
215
216 * pairs.c: Doc patches from Richard Kim. Pasted from MIT Scheme
217 (which is GNU GPL'd).
218
bd9e24b3
GH
2192000-01-31 Gary Houston <ghouston@arglist.com>
220
221 * strings.h: don't use SCM_P. don't include <string.h>.
222 * error.c, gh_data.c, ports.c, script.c, strop.c: include <string.h>.
223
224 * strings.c (scm_string_ref): make the 2nd argument compulsory.
225 previously it defaulted to zero for no good reason that I can see.
226 use a local variable for SCM_INUM (k). replace
227 SCM_VALIDATE_INUM_DEF with SCM_VALIDATE_INUM_COPY.
228
229 (scm_makfromstr): cosmetic changes.
230
231 (scm_string): Accept only chars in the list, not strings, for
232 conformance to R5RS (particularly for list->string, which is
233 supposed to be the inverse of string->list.) remove
234 SCM_DEFER_INTS/SCM_ALLOW_INTS, which is unnecessary since
235 scm_makstr handles the cell allocation. when reporting wrong-type
236 arg, don't report the position as 1.
237
238 * posix.c (scm_init_posix): intern PIPE_BUF if it's defined.
239
28d77376
GH
2402000-01-29 Gary Houston <ghouston@arglist.com>
241
ae1b098b
GH
242 * posix.c (scm_pipe): rewrote the docstring.
243
28d77376
GH
244 * filesys.c (scm_select, retrieve_select_type, get_element,
245 fill_select_type, set_element): modified so that Scheme
246 "select" tests port buffers for the ability to provide input
247 or accept output. Previously only the underlying file descriptors
248 were checked. Rewrote the docstring.
249
7f1497ce
GB
250Thu Jan 27 10:14:25 2000 Greg J. Badros <gjb@cs.washington.edu>
251
252 * vectors.c, symbols.c, strorder.c: Documentation cut and pasted
253 from Gregg Reynolds. Thanks Gregg!
254
2288ff9b
GB
255Thu Jan 27 09:59:38 2000 Greg J. Badros <gjb@cs.washington.edu>
256
257 * strop.c (scm_i_index): Obfuscated commented-out SCM_DEFINE by
258 adding "x" prefix to the line so that guile-func-name-check
259 doesn't complain unnecessarily.
260
349af6dd
GB
261Wed Jan 26 17:33:52 2000 Greg J. Badros <gjb@cs.washington.edu>
262
263 * throw.c: Factor out an #ifdef/#else/#endif choice more finely
264 for maintainability.
265
266 * strop.c: Documentation added by Gregg A. Reynolds. Pasted in
267 from qdocs, RnRs.
268
a28eb127
GB
269Wed Jan 26 10:02:11 2000 Greg J. Badros <gjb@cs.washington.edu>
270
271 * tag.c: Added doc for `tag', but mark as deprecated since Mikael
272 suggests removing tag.c altogether (and using a new `class-of'
273 instead).
274
275 * strings.c: Added documentation from Gregg A. Reynolds. Edited
276 a bit by me to use FOO instead of @var{foo} and to have the
277 summary come before preconditions on input. Also dropped trailing
278 (rnrs) note.
279
280 * gsubr.c: Do not use SCM_DEFINE for `gsubr-apply'. Register the
281 function with scm_make_subr_opt w/ last arg of 0 so it is not
282 visible at the Scheme level. Mikael says that this is the right
283 thing because the first arg to the proc is the guts of a compiled
284 closure and shouldn't be exposed to the Scheme level.
285
ac2259fc
GB
286Tue Jan 25 17:15:47 2000 Greg J. Badros <gjb@cs.washington.edu>
287
288 * sort.c: typo in comment fixed.
289
290 * keywords.c: Added documentation.
291
292 * guardians.c: Added documentation (could be better).
293
294 * gc.c: Added docs for gc-set-debug-check-freelist.
295
296 * eq.c: Added docs for eq?, eqv? equal? abridged from R4RS.
297
298 * boolean.c: Added docs for `not', `boolean?' (by hand).
299
d928e0b4
GB
300Tue Jan 25 13:28:56 2000 Greg J. Badros <gjb@cs.washington.edu>
301
302 * random.c: Added documentation, from SLIB page:
303 http://angela.ctrl-c.liu.se/~calle/scheme/slib_toc.html
304
305Mon Jan 24 17:50:20 2000 Greg J. Badros <gjb@cs.washington.edu>
306
307 * variable.c, version.c: Added documentation, written by hand
308 since I could not find anything already written that was
309 relevant.
310
d831b039
GH
3112000-01-23 Gary Houston <ghouston@arglist.com>
312
313 * filesys.c (scm_chown): omit port/fdes support if HAVE_FCHOWN is
314 not defined (thanks to Richard Y. Kim).
315
88ec97ad
GB
316Thu Jan 20 13:00:38 2000 Greg J. Badros <gjb@cs.washington.edu>
317
318 * Makefile.in: Removed, this is auto-generated.
319
078e9092
GB
320Thu Jan 20 11:33:47 2000 Dirk Hermann <dirk@ida.ing.tu-bs.de> --applied 01/20/00 gjb
321
322 * list.c: Put some variable initialization code at the point of
323 declaration; Added a comment for list*; Formatting changes.
324
325 * load.c: use SCM_NNULLP to make sure the end of a list is not
326 reached yet.
327
e7a96050
MD
3282000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
329
a177af34
MD
330 * backtrace.c (scm_display_error_message): Bugfix: Don't use
331 result of scm_list_p as C boolean.
332 (scm_display_error_message, scm_set_print_params_x): Use new
333 validation macros. (Thanks to Dirk Herrmann.)
334
d06bcb02
MD
335 * net_db.c (scm_resolv_error): Cast result from hstrerror.
336
337 * strports.c (st_end_input): Inserted parenthesis to get operator
338 grouping correct.
339
340 * list.h (scm_init_list): Removed SCM_P around prototypes.
341
342 * fports.c, list.c, numbers.c, ports.c, stime.c, symbols.c,
343 filesys.c, posix.c: Converted docstrings to ANSI C format and
e7a96050
MD
344 escaped " occurring inside string literals.
345
682eefe9
MD
346Tue Jan 18 13:21:08 2000 Mikael Djurfeldt <mdj@r11n07-s.pdc.kth.se>
347
348 * posix.c (scm_mknod): Escape " occuring inside docstring.
349
56cfe22b
MD
3502000-01-18 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
351
352 * alist.c, chars.c, debug.c, dynl.c, dynwind.c, error.c, eval.c,
353 evalext.c, filesys.c, gc.c, hash.c, hashtab.c, ioext.c,
354 keywords.c, list.c, load.c, macros.c, net_db.c, numbers.c,
355 objprop.c, ports.c, posix.c, print.c, procprop.c, procs.c,
356 ramap.c, regex-posix.c, root.c, scmsigs.c, simpos.c, socket.c,
357 stacks.c, stime.c, strings.c, strop.c, strports.c, struct.c,
358 symbols.c, throw.c, unif.c, vectors.c, version.c, vports.c,
359 weaks.c: Converted docstrings to ANSI C format.
360
361 * filesys.c (scm_chmod), simpos.c (scm_system), version
362 (scm_version), vports (scm_make_soft_port): Escape " occuring
363 inside docstring.
364
fcb1720f
GB
365Mon Jan 17 11:41:22 2000 Greg J. Badros <gjb@cs.washington.edu>
366
367 * scm_validate.h: Added SCM_VALIDATE_ULONG_COPY,
368 SCM_VALIDATE_LONG_COPY
369
370 * numbers.c: Use SCM_VALIDATE_ULONG_COPY, instead of
371 SCM_VALIDATE_INUM_COPY to let bigger numbers be used. Rename a
372 couple of formal arguments (and fix their uses) to make arguments
373 match the documentation.
374
b9af3d0e
MS
3752000-01-14 <mstachow@alum.mit.edu>
376
377 * Makefile.am: Augment path when running guile-doc-snarf so
378 guile-func-name-check is found.
379
153511a7
GB
380Fri Jan 14 09:34:55 2000 Greg J. Badros <gjb@cs.washington.edu>
381
382 * scm_validate.h (SCM_NUM2LONG_DEF): Fix this macro to just use
383 def, not SCM_MAKINUM(def); thanks Janis Bzerins!
384
59d5245f
GB
385Wed Jan 12 00:06:53 2000 Greg J. Badros <gjb@cs.washington.edu>
386
387 * net_db.c (s_scm_inet_makeaddr): Use SCM_NUM2ULONG since that's
388 the way guile-1.3.4 worked, but #if 0 out the version using
389 SCM_VALIDATE_INUM_COPY for stricter testing.
390
95aec69f
GB
391Tue Jan 11 18:24:18 2000 Greg J. Badros <gjb@cs.washington.edu>
392
393 * guile-doc-snarf.in: Use new $fullfilename for running
394 guile-func-name-check, and put "$fullfilename" and "$filename" in
395 quotes at uses to make sure re-splitting on whitespace does not
396 occur (so filenames w/ embedded whitespace would work okay, though
397 I sure hope we never have to deal with that! :-) ). Thanks to
398 Mikael for pointing out the source_dir != build_dir was broken.
399
b7ac2837
GB
400Tue Jan 11 17:42:40 2000 Greg J. Badros <gjb@cs.washington.edu>
401
402 * scm_validate.h: Added SCM_NUM2LONG_DEF macro. Make
403 SCM_OUT_OF_RANGE use SCM_MAKINUM, not scm_long2num. Added
404 SCM_COERCE_ROSTRING macro. Added SCM_VALIDATE_NONEMPTYLIST
405 macro. Fix SCM_VALIDATE_STRINGORSUBSTR macro to not use SLOPPY
406 variants.
407
408 * ports.c (scm_port_closed_p): Validate that the arg is a PORT,
409 then return whether it's an open port (was validating that it was
410 an open port -- this was a bug I introduced back in December, but
411 my careful reading of diffs caught it).
412
413 * numbers.c: Recombine the two conditional-compilation paths for
414 all the log* primitives -- they were split based on #ifndef
415 scm_long2num; factored out a SCM_LOGOP_RETURN macro, and fixed
416 some bugs and inconsistencies in the two sets of implementations.
417 (scm_lognot) Fixed *atrocious* re-use of a SCM as an integer!
418
419 * ioext.c: Use SCM_ASSERT_RANGE in a couple places, and
420 SCM_VALIDATE_INUM_COPY once where it should've been used.
421
422 * fluids.c (scm_internal_with_fluids): Use
423 SCM_VALIDATE_LIST_COPYLEN.
424
425 * filesys.c: Use SCM_NUM2LONG instead of SCM_VALIDATE_INUM_COPY;
426 this is questionable as it relaxes type safety, but other changes
427 were useful and all SCM_NUM2LONG's should probably be
428 revisited. Use SCM_OUT_OF_RANGE, SCM_WRONG_TYPE_ARG.
429
430 * evalext.c: line-break change on 1 line.
431
432 * eval.c (nconc2last): Takes a non-empty list as its first
433 argument, not just a list.
434
435 * dynl.c: Use new SCM_COERCE_ROSTRING macro.
436
437Tue Jan 11 15:44:23 2000 Greg J. Badros <gjb@cs.washington.edu>
438
439 * dynl.c, feature.c, filesys.c, fports.c, list.c, load.c,
440 net_db.c, sort.c, stacks.c, unif.c: Use SCM_WTA, SCM_MISC_ERROR
441 where possible.
442
443 * symbols.c (scm_sysintern0): Fixed the function name in a
444 scm_misc_error invocation.
445
446 * print.c (scm_simple_format): Do not need SCM_COERCE_SUBSTR, and
447 use scm_return_first to ward off latent GC bug that Mikael caught.
448
449 * async.c: Use SCM_VALIDATE_ASYNC_COPY one place where it wasn't
450 used before but should've been.
451
d61f6b02
MD
4522000-01-12 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
453
454 * snarf.h (SCM_PROC1): Replaced SCM (*) (...) with
455 SCM_FUNC_CAST_ARBITRARY_ARGS.
456
88423ab1
GB
457Tue Jan 11 13:44:07 2000 Greg J. Badros <gjb@cs.washington.edu>
458
459 * guile-func-name-check.in: Added this script to statically check
460 #define FUNC_NAME, #undef FUNC_NAME in the source.
461
462 * sort.c, posix.c: Fix #undef FUNC_NAME lines to not have trailing
463 redundant comment, semicolon; caught by new guile-func-name-check
464 script.
465
466 * debug.c: Fix mistaken #define FUNC_NAME for scm_make_iloc.
467 Caught by new guile-func-name-check-script.
468
469 * Makefile.am: Added guile-func-name-check to bin_SCRIPTS
470
471 * ramap.c: Fix #if 0'd out code to be syntactically acceptable to
472 guile-func-name-check.
473
474 * guile-doc-snarf.in: Run guile-func-name-check on the file before
475 doing the snarf.
476
7f15e635
GB
477Tue Jan 11 11:31:10 2000 Greg J. Badros <gjb@cs.washington.edu>
478
479 * fports.c, ports.c, ports.h, strports.c, vports.c: Make write
480 port function take const void*, not void*.
481
bf121b59
GB
482Tue Jan 11 11:18:07 2000 Greg J. Badros <gjb@cs.washington.edu>
483
484 * scm_validate.h, chars.c, ports.c, print.c, read.c, strings.c,
485 strop.c: Use SCM_VALIDATE_ICHR, SCM_VALIDATE_ICHR_COPY instead of
486 SCM_VALIDATE_CHAR, SCM_VALIDATE_CHAR_COPY. Change made for
487 consistency with the other macros dealing with immediate
488 characters. (Similar to INT -> INUM change a week or so ago).
489
7965d98f
GB
490Tue Jan 11 10:41:46 2000 Greg J. Badros <gjb@cs.washington.edu>
491
492 * dynl.c, error.c, eval.c, feature.c, filesys.c, fports.c, list.c, load.c,
493 net_db.c, read.c, socket.c: Update error messages to use ~A for
494 %s, ~S for %S to work with new `simple-format' format and be
495 standardized better.
496
497 * print.h, print.c (scm_simple_format): Added `simple-format'
498 primitive. It's the old scm_display_error, with ARGS now a rest
499 parameter, and the destination first instead of last (and a couple
500 new capabilities inspired by `format' -- #t as destination means
501 current-output-port, #f means return the formatted text as a
502 string.
503
504 * gh.h, gh_data.c, ports.h, ports.c: Added some missing const specifications.
505
506 * backtrace.c (scm_display_error_message): Rewrote to use
507 scm_simple_format() procedure.
508
509 * __scm.h: Added commented-out #define of GUILE_DEBUG_FREELIST
510
f73d2411
MV
5112000-01-09 Marius Vollmer <mvo@zagadka.ping.de>
512
513 Finally applied the libltdl patch from Thomas Tanner, with slight
514 modifications.
515
516 * DYNAMIC-LINKING: Removed because it is obsolete.
517 * dynl.c: Use ANSI prototypes.
518 (sysdep_dynl_link): Use lt_dlopenext instead of lt_dlopen.
519 * scmconfig.h.in: Do not change, as it is automatically generated.
520
521 1999-07-25 Thomas Tanner <tanner@ffii.org>
522
523 * dynl-dl.c, dynl-dld.c, dynl-shl.c, dynl-vms.c: deleted
524 (obsolete)
525 * Makefile.am: likewise, add INCLTDL (libltdl headers) to
526 INCLUDES, set dlpreopened files in LDFLAGS, link libguile
527 against libltdl
528 * dynl.c: use libltdl if DYNAMIC_LINKING is enabled,
529 * guile.c: register preloaded modules
530 * scmconfig.h.in: remove obsolete symbols
531
38c1d3c4
GH
5322000-01-09 Gary Houston <ghouston@arglist.com>
533
534 * These changes should make it unnecessary to call tzset from
535 Scheme after modifying the TZ environment variable, even if the
536 system date facilities cache the value.
537 * stime.c (setzone, scm_localtime): added comments.
538 (tzset): don't define a noop tzset macro if HAVE_TZSET not defined.
539 (setzone): don't call tzset.
540 (restorezone): call tzset only if HAVE_TZSET is defined.
541 (scm_tzset): don't define if HAVE_TZSET not defined. Change the
542 doc string to indicate that this procedure isn't likely to do
543 anything useful.
544 (scm_localtime, scm_strftime, scm_mktime): call tzset if
545 LOCALTIME_CACHE is defined.
546
9359d657
MD
5472000-01-09 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
548
549 * posix.c (scm_sync): Return SCM_UNSPECIFIED.
550
f25f761d
GH
5512000-01-09 Gary Houston <ghouston@arglist.com>
552
553 * eval.c: define scm_unbound_variable_key ('unbound-variable).
554 scm_lookupcar1: throw an error with key 'unbound-variable instead
555 of 'misc-error when an unbound variable is encountered.
556
557 * filesys.c (scm_mkdir, scm_rmdir, scm_getcwd, scm_select,
558 scm_symlink, scm_readlink, scm_lstat),
559 posix.c (scm_setpgid, scm_setsid, scm_ctermid, scm_tcgetpgrp,
560 scm_tcsetpgrp, scm_uname, scm_setlocale, scm_mknod, scm_nice,
561 scm_sync),
562 simpos.c (scm_system),
563 stime.c (scm_times, scm_strptime):
564 move the HAVE_XXX feature tests out of the procedure bodies.
565 don't use SCM_SYSMISSING.
566 scm_validate.h (SCM_SYSMISSING): removed.
567 error.h, error.c (scm_sysmissing): comment that this is deprecated.
568 see ChangeLog entry for 1999-12-28.
569
a4dd2611
GB
570Sat Jan 8 19:52:04 2000 Greg J. Badros <gjb@cs.washington.edu>
571
572 * scm_validate.h (SCM_VALIDATE_BOOL_COPY): Fix typo.
573
574Sat Jan 8 17:06:46 2000 Greg J. Badros <gjb@cs.washington.edu>
575
576 * backtrace.c: Fix spelling typo in a comment.
577
578 * snarf.h: Use new SCM_DOCS macro to encapsulate the non SCM_INIT
579 text. Reformatted some of the expansions.
580
5ac36451
GB
581Fri Jan 7 15:50:46 2000 Greg J. Badros <gjb@cs.washington.edu>
582
583 * scm_validate.h (SCM_OUT_OF_RANGE): Use scm_out_of_range_pos to
584 report the position of the argument.
585
586 * error.h, error.c (scm_out_of_range_pos): Added this function to
587 take extra "pos" argument, the position number of the errant
588 argument.
589
590 * debug.c: Use SCM_OUT_OF_RANGE instead of scm_out_of_range.
591
592 * snarf.h: Use SCM_HERE and SCM_INIT as names, not SCM_NOTSNARF
593 and SCM_SNARFING. Also put the %%% in the SCM_INIT since Mikael
594 prefers that and I'm reasonably indifferent.
595
596Fri Jan 7 15:03:32 2000 Greg J. Badros <gjb@cs.washington.edu>
597
598 * snarf.h: Factor out differences between C++ and non-C++ into
599 SCM_FUNC_CAST_ARBITRARY_ARGS macro. Modify all the snarf macro
600 definitions to use SCM_NOTSNARF and SCM_SNARFING macros (like
601 Mikael's macros, below, but changed names and SCM_SNARFING no
602 longer expands to include %%% -- that must appear in the argument
603 so that the token appears at the call-site as a reminder).
604
088bb1d4
MD
6052000-01-07 Mikael Djurfeldt <mdj@thalamus.nada.kth.se>
606
607 * snarf.h (SCM_INSITU, SCM_INIT): New snarf macros for use in user
608 snarf macro definitions.
609
636480e6
MD
6102000-01-06 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
611
612 * chars.c (scm_integer_to_char): Use Greg's nice
613 SCM_VALIDATE_INUM_RANGE macro for argument checking for closer
614 adherence to R5RS.
615
7c5628e2
GB
616Thu Jan 6 11:48:49 2000 Greg J. Badros <gjb@cs.washington.edu>
617
618 * *.c, snarf.h: Replace GUILE_PROC1 with SCM_DEFINE1 throughout.
619
2cc0f8cb
GB
620Thu Jan 6 11:22:53 2000 Greg J. Badros <gjb@cs.washington.edu>
621
622 * Makefile.am (ETAGS_ARGS): Switch to SCM_DEFINE, SCM_DEFINE1
623 instead of GUILE_PROC.
624
625Thu Jan 6 11:21:49 2000 Greg J. Badros <gjb@cs.washington.edu>
626
627 * alist.c: Do not report mismatch errors on some uses of `tmp' (do
628 this by using SCM_ARG2 instead of `2' in the SCM_VALIDATE_CONS
629 macro call.
630
9179dcdd
GB
631Thu Jan 6 09:54:33 2000 Dirk Herrmann <dirk@ida.ing.tu-bs.de> --gjb applied
632
633 * scm_validate.h: Remove some redundant NIMP tests.
634
635 * alist.c: minimize scope of the tmp variables, and initialize
636 them when declared. The strange SCM_NIMP tests are replaced by
637 SCM_CONSP tests that more closely reflect the intended semantics.
638 However, we don't get a performance penalty here, because the
639 SCM_CONSP test was performed by the ALISTCELL test anyway. * The
640 extremely ugly use of ASRTGO macros was removed: The calls to
641 ASRTGO were not encapsulated by "#ifndef SCM_RECKLESS", but got a
642 label parameter that only exists when SCM_RECKLESS is not defined.
643 This works, because ASRTGO itself is defined in a way that it only
644 makes use of the label parameter if SCM_RECKLESS is not defined
645 (shudder!). Does guile make at all use of the possibility to
646 define SCM_RECKLESS? * Codesize is likely to be reduced, since
647 instead of two calls to SCM_ASSERT performed by the ALISTCELL test
648 we now only get one test.
649
650 * list.c: Use SCM_NNULLP, not SCM_NIMP as appropriate. Also use
651 SCM_NULLP instead of SCM_IMP. Drop use of "register" keyword on
652 some variables in `list?'. Fix `reverse' and `reverse!'
653 primitives to handle improper lists better.
654
15b33280
GB
655Wed Jan 5 11:24:53 2000 Greg J. Badros <gjb@cs.washington.edu>
656
657 * *.[ch]: Whitespace changes -- added space after SCM_VALIDATE_*
658 macros and SCM_DEFINE macros to match GNU coding standards.
659
ca8cd130
GB
660Wed Jan 5 11:04:24 2000 Greg J. Badros <gjb@cs.washington.edu>
661
662 * *.[ch]: Replace GUILE_PROC w/ SCM_DEFINE.
663
fb764465
GB
664Wed Jan 5 10:59:06 2000 Greg J. Badros <gjb@cs.washington.edu>
665
666 * *.[ch]: Replace SCM_VALIDATE_INT w/ SCM_VALIDATE_INUM for
667 better consistency with the names of other SCM_VALIDATE_ macros
668 and better conformance to guile naming policy.
669
670Wed Jan 5 10:50:39 2000 Greg J. Badros <gjb@cs.washington.edu>
671
672 * ports.c (s_scm_close_all_ports_except): Use SCM_ARG1 in a
673 SCM_VALIDATE instead of 1 to avoid a check on the argument (since
674 it's not the actual name of the formal).
1e484823
GB
675
676 * guile-snarf.awk.in: Do argument/number mismatch checking and
677 print warnings in an Emacs compile-mode parseable format.
678
679 * struct.c: Use SCM_ASSERT_RANGE instead of SCM_ASSERT w/
680 SCM_OUTOFRANGE as 3rd argument.
681
682 * random.c: Fix argument/number mismatch (that I introduced :-( ).
683
684 * __scm.h: Do not #define SCM_ARG* when snarfing;
685 lets us distinguish between 1 and SCM_ARG1 when snarfing as only
686 the former (using the number) requires the argument to match the
687 formal in the current argument snarfing check.
688
689 * snarf.h: Give new definition of SCM_ASSERT when in
690 snarfing mode to output a lexically-identifiable sequence that the
691 guile-snarf.awk script uses to verify argument/position matching.
692
693 * ramap.c: Remove extraneous #undef FUNC_NAME.
694
53fc4636
GB
695Wed Jan 5 08:36:38 2000 Greg J. Badros <gjb@cs.washington.edu>
696
697 * guile-doc-snarf.awk.in: Removed -- guile-snarf.awk.in is the
698 current version of the same functionality; it writes the .x output
699 to stdout instead of directly into the file.
700
701Wed Jan 5 08:15:04 2000 Greg J. Badros <gjb@cs.washington.edu>
702
703 * unif.c, symbols.c, strings.c, stacks.c, random.c, print.c,
704 posix.c: Eliminated a bunch of SCM_NIMP(..)s that are now
705 redundant with the safer macros. Patch from Dirk Hermann applied
706 by hand. Thanks Dirk!
707
708 * scm_validate.h: Added SCM_VALIDATE_VECTOR_OR_DVECTOR for some
709 uses in random.c.
710
711 * ramap.c: whitespace change.
712
3b5345d9
GB
713Tue Jan 4 14:21:35 2000 Greg J. Badros <gjb@cs.washington.edu>
714
715 * options.c, objects.c, keywords.c, gc.c: Some redundant SCM_NIMP
716 removals from Dirk Hermann.
717
718 * alist.c: Rename formals to match the parameter names in the
719 documentation, updates to documentation. Thanks Dirk Hermann!
720
169aec65
MD
7212000-01-04 Mikael Djurfeldt <mdj@mdj.nada.kth.se>
722
db62436e
MD
723 * eval.c (SCM_CEVAL): Reverse order of
724 scm_stack_checking_enabled_p and SCM_STACK_OVERFLOW_P
725 (Thanks to Brad Knotwell.)
169aec65 726
da43d822
GB
727Mon Jan 3 08:30:02 2000 Greg Harvey <Greg.Harvey@thezone.net> (applied --01/03/00 gjb)
728
729 * gc.c (scm_debug_newcell): Added SCM_SETCAR of the newly
730 allocated cell.
731
732 * pairs.h: Added a comment about the need for the SCM_SETCAR in
733 SCM_NEWCELL macro.
734
735Mon Jan 3 08:25:19 2000 Greg J. Badros <gjb@cs.washington.edu>
736
737 * dynl-vms.c, debug.c, coop-threads.c, backtrace.c, eval.c: More
738 SCM_NIMP tests that were redundant are now eliminated. Patches
739 from Dirk Hermann applied by hand.
740
339999c7 741The ChangeLog continues in the file: "ChangeLog-1996-1999"